回答編集履歴
1
rewrite answer
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
|
1
|
+
整数`n`の20%、つまり`n / 5`の切り上げは`(n + 4) / 5`(全てint型で計算)で求まります。
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
```
|
5
|
+
```
|
6
6
|
|
7
7
|
#include <assert.h>
|
8
8
|
|
@@ -16,7 +16,9 @@
|
|
16
16
|
|
17
17
|
assert(0 <= n);
|
18
18
|
|
19
|
+
int r = (n + 4) / 5; // ceil(n * 20%)
|
20
|
+
|
19
|
-
return
|
21
|
+
return n + r;
|
20
22
|
|
21
23
|
}
|
22
24
|
|
@@ -28,7 +30,7 @@
|
|
28
30
|
|
29
31
|
for (int i = 1; i <= 100; i++)
|
30
32
|
|
31
|
-
printf("%d->%d\n", i, ceil20up(i));
|
33
|
+
printf("%d -> %.1f -> %d\n", i, i * 1.2, ceil20up(i));
|
32
34
|
|
33
35
|
}
|
34
36
|
|