第 1 測資點(100%): WA (line:10)
答案不正確
您的答案為: END OF OUTPUT 正確答案為: 50000 ABUNDANT
為什麼會錯??以下是我的程式碼:
#include <bits/stdc++.h>
using namespace std;
int main(int argc, char** argv){
string a;
int b,sum,i;
while(getline(cin,a))
{
printf("PERFECTION OUTPUT\n");
istringstream in(a);
while(in>>b)
{
if(b==0)break;
if(b<10)cout<<string(4,' ');
else if(b<100&&b>=10)cout<<string(3,' ');
else if(b<1000&&b>=100)cout<<string(2,' ');
else if(b<10000&&b>=1000)cout<<string(1,' ');
for(i=1;i<=b/2;i++)
{
if(b%i==0)sum+=i;
}
if(b==sum)cout<<b<<" PERFECT\n";
else if(b>sum)cout<<b<<" DEFICIENT\n";
else cout<<b<<" ABUNDANT\n";
sum=0;
}
printf("END OF OUTPUT\n");
}
return 0;
}
請幫幫我......
我認為它題目敘述不清
他是有可能給你兩行的
像是
1 3 47 53 92
32 5 23 4 0
這樣的話就要輸出
PERFECTION OUTPUT
1 DEFICIENT
3 DEFICIENT
47 DEFICIENT
53 DEFICIENT
92 DEFICIENT
32 DEFICIENT
5 DEFICIENT
23 DEFICIENT
4 DEFICIENT
END OF OUTPUT
注意
總共只有一個 "PERFECTION OUTPUT" 和一個 "END OF OUTPUT"
我認為它題目敘述不清
他是有可能給你兩行的
像是
1 3 47 53 92
32 5 23 4 0
這樣的話就要輸出
PERFECTION OUTPUT
1 DEFICIENT
3 DEFICIENT
47 DEFICIENT
53 DEFICIENT
92 DEFICIENT
32 DEFICIENT
5 DEFICIENT
23 DEFICIENT
4 DEFICIENT
END OF OUTPUT
注意
總共只有一個 "PERFECTION OUTPUT" 和一個 "END OF OUTPUT"
謝謝你的幫助~~AC了