結果
| 問題 |
No.5 数字のブロック
|
| ユーザー |
mannshi222
|
| 提出日時 | 2019-07-14 20:22:10 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 3 ms / 5,000 ms |
| コード長 | 1,547 bytes |
| コンパイル時間 | 212 ms |
| コンパイル使用メモリ | 29,568 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-24 15:26:27 |
| 合計ジャッジ時間 | 1,337 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 34 |
ソースコード
#include <stdio.h>
#include <stdlib.h>
#define ENDD '\0'
#define KIGY '\n'
#define TRUE 0
#define FALSE 1
int compare_int(const void *a, const void *b);
int compare_int(const void *a, const void *b)
{
return *(int*)a - *(int*)b;
}
int main()
{
int ch;
char buff[100000+1];
long long int buffi;
long long int L, N ;
long long int nums[100000+1];
buffi = 0;
while( (ch=getc(stdin)) != KIGY) {
buff[buffi++] = ch;
}
buff[buffi] = ENDD;
L = atoi(buff);
buffi = 0;
while( (ch=getc(stdin)) != KIGY) {
buff[buffi++] = ch;
}
buff[buffi] = ENDD;
N = atoi(buff);
buffi=0;
int count = 1;
int nums_i = 0;
while( (ch=getc(stdin)) != EOF) {
if( ch==' ' || ch==KIGY ) {
buff[buffi] = ENDD;
nums[nums_i++] = atoll( buff );
buffi = 0;
}
else {
buff[buffi++] = ch;
}
}
qsort( nums, N, sizeof(long long int), compare_int );
long long int sum = 0;
for( long long int i = 0; i < N; i++ ) {
sum += nums[i];
if( sum > L ) {
printf("%lld\n", i );
return 0;
}
}
printf("%lld\n", N );
return 0;
}
mannshi222