C言語初心者です。
AtCoderのABCの質問です。
http://https://atcoder.jp/contests/abc042/tasks/abc042_a
要約
3つの数渡すので、それらを入れ替えて5・7・5になるか調べてね。
なったらYES、ならないならNOをprintfしてね、
ってことだと思います(多分)
C
1#include<stdio.h> 2int main(void) 3{ 4 int A,B,C; 5 scanf("%d,%d,%d",&A,&B,&C); 6 if((A==5)&&(B==7)&&(C==5)) 7 {printf("YES");} 8 else if((A==7)&&(B==5)&&(C==5)) 9 {printf("YES");} 10 else if((A==5)&&(B==5)&&(C==7)) 11 {printf("YES");} 12 else 13 {printf("NO");} 14 15return 0; 16}
と書いているのですが、
WA(不正解)が3つ出てしまいます(AC(正解)は2つ)
どうやら結果を詳しく見てみると、YESの場合がうまく行ってないみたいなのですが…
何度コードとにらめっこしても全然わからなくて…
どなたかご教授ください。できれば初心者の私にもわかるようかつ詳しく説明していただけるとすごい喜びます。
PS:その前はこう書いてました。
C
1#include<stdio.h> 2int main(void) 3{ 4 int A,B,C; 5 scanf("%d,%d,%d",&A,&B,&C); 6 if((A==5)&&(B==7)&&(C==5)) 7 {printf("YES");} 8 else if((A==7)&&(B==5)&&(C==5)) 9 {printf("YES");} 10 else if((A==5)&&(B==5)==(C==7)) 11 {printf("YES");} 12 else 13 {printf("NO");} 14 }
二つ目のelse ifのところ
C
1else if((A==5)&&(B==5)==(C==7)) 2 3/*じゃなくて*/ 4 5else if((A==5)&&(B==5)&&(C==7)) 6 /*↑ここを&&に直しました*/
あと、return 0も追加して一番上のコードになりました。
これだとWA2つ、AC3つになるんですよね。
これだと577、755のときエラーはいてるみたいです
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/11/05 10:25