結果
問題 |
No.205 マージして辞書順最小
|
ユーザー |
![]() |
提出日時 | 2015-06-08 19:13:48 |
言語 | C90 (gcc 12.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 540 bytes |
コンパイル時間 | 472 ms |
コンパイル使用メモリ | 21,632 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-06 14:50:03 |
合計ジャッジ時間 | 951 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 2 |
other | AC * 8 WA * 7 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:8:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 8 | scanf("%d%*c",&N); | ^~~~~~~~~~~~~~~~~ main.c:9:20: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 9 | for(i=0;i<N;i++) scanf("%s%*c",str[i]); | ^~~~~~~~~~~~~~~~~~~~~
ソースコード
#include<stdio.h> #include<string.h> int main(void){ char str[50][51],flg[50],len[50]; int min,i,j,k,N,sum=0; scanf("%d%*c",&N); for(i=0;i<N;i++) scanf("%s%*c",str[i]); for(i=0;i<N;i++){ len[i]=strlen(str[i]); sum+=len[i]; } memset(flg,0,sizeof(flg)); for(i=0;i<sum;i++){ min=-1; for(j=0;j<N;j++){ if(flg[j]==len[j]) continue; if(min==-1) min=j; else if(str[min][flg[min]]>str[j][flg[j]]) min=j; } putchar(str[min][flg[min]]); flg[min]++; } putchar('\n'); return 0; }