作者aquila018 (旅行者)
看板C_and_CPP
標題ACM 10055 WA
時間Tue Jul 25 19:59:03 2006
請問一下...
#include<stdio.h>
int main(void){
unsigned int a,b;
while(scanf("%d %d",&a,&b)==2){
if(a>b)
printf("%d\n",a-b);
else
printf("%d\n",b-a);
}
return 0;
}
不知道為什麼就是WA
一直覺得我沒錯XD"
對照:
#include<iostream>
using namespace std;
int main(void){
long long int a,b;
for(;;){
cin>>a>>b;
if(cin.eof()) break;
if(b>a) cout<<b-a<<endl;
else cout<<a-b<<endl;
}
return 0;
}
這個是AC的..
但我搞不懂我和他的差在哪...意思不都是一樣的嗎?
我試過把unsigned int改成long long int但沒用@@"
--
╭──╮ ╭──╮ ╭╮╭╮ ☆
╭╮╭──╮ ˙
│ │ │ │ ││││ ╭╮ │││ │ ˙
│ ☆ │ │ ☆
│ ││││ ││ │││ ☆ │ .·﹒
│╭╮│ ╰─╮│ │╰╯│ ││ │││╭╮│
╰╯╰╯ ╰╯ ╰──╰ ╰╯ ╰╯╰╯╰╯ ˙ ˙ ξAquila
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.203.51.12
※ 編輯: aquila018 來自: 203.203.51.12 (07/25 19:59)
推 lightsoldier:改成 long long 的話 有記得改 %lld 嗎? 07/25 20:00
推 aquila018:沒有...@@" 改了就過了...謝謝.. 07/25 20:05
→ aquila018:附帶問一下 如果用unsigned int可過嗎? 07/25 20:06
→ aquila018:我用unsigned int 加上%lld 是逾時 07/25 20:06
→ ckclark:unsigned int請用%u 07/25 20:26
推 aquila018:但使用%u就WA了@@" 07/25 20:27
推 ledia:are not greater than 2^32, 意思是會有 2^32 07/25 20:37
推 aquila018:但unsigned int不是4btye嗎@@? 這樣算是剛好2^32@@? 07/25 20:39
推 ledia:no, unsigned int 只到 2^32-1 07/25 20:40
→ ledia:因為有 0 07/25 20:40
推 aquila018:對喔...都忽略他了...囧...謝謝^^ 07/25 20:41