結果

問題 No.197 手品
ユーザー suppy193
提出日時 2015-07-01 14:55:06
言語 C90
(gcc 12.3.0)
結果
AC  
実行時間 1 ms / 1,000 ms
コード長 939 bytes
コンパイル時間 424 ms
コンパイル使用メモリ 23,680 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-07-20 03:41:36
合計ジャッジ時間 1,670 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 43
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c: In function ‘main’:
main.c:9:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    9 |     scanf("%s", sb);
      |     ^~~~~~~~~~~~~~~
main.c:10:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   10 |     scanf("%d", &n);
      |     ^~~~~~~~~~~~~~~
main.c:11:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   11 |     scanf("%s", sa);
      |     ^~~~~~~~~~~~~~~

ソースコード

diff #

#include <stdio.h>
#include <math.h>

int main(void) {
    char sb[4], sa[4];
    int i, n;
    int coin_b, coin_a;
    int diff;
    scanf("%s", sb);
    scanf("%d", &n);
    scanf("%s", sa);
    coin_b = 0;
    coin_a = 0;
    for(i = 0;i < 3;i++){
        if(sb[i] == 'o')coin_b++;
        if(sa[i] == 'o')coin_a++;
    }
    if(coin_b != coin_a){
        printf("SUCCESS\n");
        return 0;
    }
    diff = 0;
    for(i = 0;i < 3;i++){
        
        if(sb[i] != sa[i]){
            diff += pow(2, i);
        }
    }
    //printf("%d", diff);
    if(diff == 5 && n >= 2){
        printf("FAILURE\n");
    }
    else if((diff == 3 || diff == 6) && n != 0){
        printf("FAILURE\n");
    }
    else if(diff == 0 && (sb[0] == sb[1] || sb[1] == sb[2])){
        printf("FAILURE\n");
    }
    else if(diff == 0 && (n > 1 || n == 0)){
        printf("FAILURE\n");
    }
    else{
        printf("SUCCESS\n");
    }
    return 0;
}
0