結果
問題 | No.5 数字のブロック |
ユーザー | bonyuta0204 |
提出日時 | 2017-04-13 17:27:42 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 809 bytes |
コンパイル時間 | 845 ms |
コンパイル使用メモリ | 29,568 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-18 10:59:30 |
合計ジャッジ時間 | 1,154 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 34 |
ソースコード
#include <stdio.h> #include <stdlib.h> int comp( const void *c1, const void *c2 ); int main(void){ int l, n; scanf("%d %d",&l, &n); int blocks[n] ; int i; for (i=0;i<n;i++){ scanf("%d", &blocks[i]) ; } // sort blocks qsort(blocks, n, sizeof(int), comp); for(i=0;i<n;i++){ // printf("%d", blocks[i]) ; } // check if blocks can be accomdated in bocks(L) int total = 0; int answer; for(i=0;i<n;i++){ total += blocks[i]; if(total > l){ break; } answer = i + 1; } printf("%d\n", answer); } int comp( const void *c1, const void *c2 ) { int tmp1 = *(int *)c1; int tmp2 = *(int *)c2; if( tmp1 < tmp2 ) return -1; if( tmp1 == tmp2 ) return 0; if( tmp1 > tmp2 ) return 1; }