結果
| 問題 |
No.23 技の選択
|
| コンテスト | |
| ユーザー |
mudbdb
|
| 提出日時 | 2015-07-17 02:44:27 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 5,000 ms |
| コード長 | 561 bytes |
| コンパイル時間 | 209 ms |
| コンパイル使用メモリ | 22,272 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-28 16:47:24 |
| 合計ジャッジ時間 | 1,279 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 33 |
コンパイルメッセージ
main.c: In function ‘main’:
main.c:13:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
13 | scanf("%d", &H);
| ^~~~~~~~~~~~~~~
main.c:14:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
14 | scanf("%d", &A);
| ^~~~~~~~~~~~~~~
main.c:15:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
15 | scanf("%d", &D);
| ^~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
int localdiv(int H, int A)
{
if (H < 0) H = 0;
return (H/A + ((H%A)?1:0));
}
int main()
{
int H;
int A;
int D;
scanf("%d", &H);
scanf("%d", &A);
scanf("%d", &D);
int Hmax = 10000;
int HdivD = localdiv(H, D);
int *E = (int*)malloc(sizeof(int)*(HdivD+1));
int i;
int min = Hmax*2+1;
for (i=0; i<=HdivD; i++) {
E[i] = localdiv(H-D*i, A)*2 + i*3;
if (E[i] < min) min = E[i];
}
if (min%2) {
printf("%.1f\n", (double)min/2);
} else {
printf("%d\n", min/2);
}
return 0;
}
mudbdb