結果
問題 | No.232 めぐるはめぐる (2) |
ユーザー | TLwiegehtt |
提出日時 | 2015-07-23 07:39:32 |
言語 | C90 (gcc 12.3.0) |
結果 |
AC
|
実行時間 | 4 ms / 1,000 ms |
コード長 | 1,596 bytes |
コンパイル時間 | 691 ms |
コンパイル使用メモリ | 21,504 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-14 12:38:10 |
合計ジャッジ時間 | 1,507 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:15:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 15 | scanf("%d %d %d", &T, &A, &B); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h> int min(int a, int b){ if(a<b){return a;} return b; } int main(void){ int i,j; int A,B,T; int dir[8] = {0}; int minStep; int tt; scanf("%d %d %d", &T, &A, &B); tt = T; dir[0]=A; dir[1]=B; dir[2]=0; dir[3]=0; dir[4]=0; dir[4] = min(A,B); dir[0]-= dir[4]; dir[1]-= dir[4]; minStep = dir[0] + dir[1] + dir[4]; if( A == 0 && B == 0){ if( T== 1){ printf("NO\n"); }else{ printf("YES\n"); if(T%2==1){ dir[2] = 1; dir[3] = 1; dir[4] = 1; } for(i=0;i<5;i++){ for(j=0;j<dir[i];j++){ if(i==0){ printf("^\n"); }else if(i==1){ printf(">\n"); }else if(i==2){ printf("v\n"); }else if(i==3){ printf("<\n"); }else if(i==4){ printf("^>\n"); } tt--; } } for(i=0;i<tt;i+=2){ printf("<\n"); printf(">\n"); } } }else{ if(T < minStep ){ printf("NO\n"); }else{ printf("YES\n"); if((T-minStep)%2 == 1){ if(dir[4] != 0){ dir[4] -= 1; dir[1] += 1; dir[0] += 1; }else{ if(A==0){ dir[4] += 1; dir[2] += 1; dir[1] -= 1; }else{ dir[4] += 1; dir[3] += 1; dir[0] -= 1; } } } for(i=0;i<5;i++){ for(j=0;j<dir[i];j++){ if(i==0){ printf("^\n"); }else if(i==1){ printf(">\n"); }else if(i==2){ printf("v\n"); }else if(i==3){ printf("<\n"); }else if(i==4){ printf("^>\n"); } tt--; } } for(i=0;i<tt;i+=2){ printf("<\n"); printf(">\n"); } } } return 0; }