結果
| 問題 | No.5 数字のブロック |
| コンテスト | |
| ユーザー |
mannshi222jp
|
| 提出日時 | 2022-01-27 21:49:13 |
| 言語 | C90 (gcc 12.4.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 732 bytes |
| 記録 | |
| コンパイル時間 | 252 ms |
| コンパイル使用メモリ | 21,832 KB |
| 最終ジャッジ日時 | 2026-01-20 18:33:16 |
| 合計ジャッジ時間 | 1,077 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.c: In function ‘main’:
main.c:14:5: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
14 | for( int i = 0; i < N -1; i++ ) {
| ^~~
main.c:14:5: note: use option ‘-std=c99’, ‘-std=gnu99’, ‘-std=c11’ or ‘-std=gnu11’ to compile your code
main.c:21:13: error: redefinition of ‘i’
21 | int i = 0 ;
| ^
main.c:14:14: note: previous definition of ‘i’ with type ‘int’
14 | for( int i = 0; i < N -1; i++ ) {
| ^
main.c:12:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
12 | scanf( "%d\n", &L );
| ^~~~~~~~~~~~~~~~~~~
main.c:13:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
13 | scanf( "%d\n", &N );
| ^~~~~~~~~~~~~~~~~~~
main.c:15:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
15 | scanf( "%d ",W+i );
| ^~~~~~~~~~~~~~~~~~
main.c:17:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
17 | scanf( "%d\n", W+N-1 );
| ^~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int compare_int(const void *a, const void *b);
int main()
{
int L, N, W[10000];
int cnt;
scanf( "%d\n", &L );
scanf( "%d\n", &N );
for( int i = 0; i < N -1; i++ ) {
scanf( "%d ",W+i );
}
scanf( "%d\n", W+N-1 );
qsort( W, N, sizeof(int), compare_int );
int sum = 0;
int i = 0 ;
while( i < N ) {
if( sum + W[i] <= L ) {
sum += W[i++];
}
else {
break;
}
}
printf("%d\n", i );
}
int compare_int(const void *a, const void *b)
{
return *(int*)a - *(int*)b;
}
mannshi222jp