結果
問題 |
No.5 数字のブロック
|
ユーザー |
![]() |
提出日時 | 2020-03-23 02:58:33 |
言語 | C (gcc 13.3.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,088 bytes |
コンパイル時間 | 213 ms |
コンパイル使用メモリ | 29,440 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-12-26 05:48:56 |
合計ジャッジ時間 | 3,548 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | RE * 34 |
ソースコード
#include<stdio.h> void main(){ // 変数宣言 int boxWidth = 0; int blockNum = 0; int blockWidth[10000]; int ans=0; // L 大きな箱の幅を表す scanf("%d\n",&boxWidth); // N ブロックの数を表す scanf("%d\n",&blockNum); // W1 W2...WN 各ブロックの幅を表す for(int i=0;i<blockNum;i++) scanf("%d ",&blockWidth[i]); // 各ブロックをソート int cnt=0; int put=0; int flg=0; while(1){ if(blockWidth[cnt]>blockWidth[cnt+1]){ put = blockWidth[cnt]; blockWidth[cnt]=blockWidth[cnt+1]; blockWidth[cnt+1]=put; flg=1; } cnt++; if(cnt >= blockNum){ if(flg == 0){ break; }else{ cnt=0; flg=0; } } } // ブロックをはめる int blockSum=0; for(int i=0;blockSum>boxWidth;i++){ blockSum+=blockWidth[i]; ans++; } printf("%d",ans); }