中学受験算数に見る動的計画法
- 16. 階段の問題:解法1
0 2 4 56
7
7
8
8
9
10
12段のとき(最初に2段登った場合)
11
11
12
119
12
1210
13
12
13
13
14
13
14
13
14
119
12
1210
13
13
14
5
3
10
11
12
13
13
14
- 17. 階段の問題:解法1
0 3 5 67
8
8
9
9
10
11
(とても めんどくさい)
12段のとき(最初に3段登った場合)
12
12
13
1210
13
1311
14
13
14
6
2
1210
13
1311
14
11
12
13
14
- 22. 階段の問題:解法1
何回調べないといけない?
段数 答え 調べる回数
7 3 17
12 12 73
50 525,456(52万) 3,236,383(323万)
100 670,976,837,021(6709億) 4,132,674,661,507(4兆)
200 1,094,081,998,015,776,5
26,179,329
6,738,660,265,660,308,8
07,737,463
600(東京タワー階段の段
数)
7,734,268,575,229,071,7
58,820,053,174,351,074,
065,809,240,913,542,350
,861,075,008,313,376,34
1,876
47,636,839,310,365,630,
340,208,491,560,681,036
,757,140,134,694,391,45
5,799,211,182,744,208,5
99,001
😵
- 23. 階段の問題:解法1
コンピュータは何回調べられる?
コンピュータは一秒に10,000,000(1億回)くらい調べられる
段数 調べる回数
50 3,236,383(323万)
100 4,132,674,661,507(4兆)
200 1,094,081,998,015,776,5
26,179,329
600(東京タワー階段の段
数)
47,636,839,310,365,630,
340,208,491,560,681,036
,757,140,134,694,391,45
5,799,211,182,744,208,5
99,001
←これは1秒で調べられる
←これは12時間かかる
←これは21億年かかる
※宇宙が誕生してから
138億年しか経っていない
- 27. 階段の問題:解法2
←最初は普通に調べていく
0 2 4 6 8 10
11
12
13
13
14
2本の枝を調べ切った8,10,11段目について、
そこから12段目まで登る登り方の数がわかる
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - - - 1 - 1 0
7
95
3
- 28. 階段の問題:解法2
0 2 4 6 8
9
10
11
11
12
13
13
14
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - - - 1 - 1 0
先を調べなくても、
この後12段目に登るための
登り方の個数がわかる!
0通り5
3
7
- 29. 階段の問題:解法2
0 2 4 6 8
9
10
11
11
12
12
13
13
14
3
0通り
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - - - 1 1 1 0
5
7
- 30. 階段の問題:解法2
0 2 4 6 8 10
11
12
13
13
14
3
5
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - 2 - 1 1 1 0
9 11
12
0通り
7
- 31. 階段の問題:解法2
0 2 4 6
7
8 10
11
9
12
13
13
14
3
5
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - 2 - 1 1 1 0
9 11
12
0通り
10
- 32. 階段の問題:解法2
0 2 4 6
7
8 10
11
9
12
13
13
14
3
5
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - 2 - 1 1 1 0
9 11
12
0通り
1通り
10 1通り
- 33. 階段の問題:解法2
0 2 4 6
7
8 10
11
9
12
13
13
14
3
9 11
12
0通り
1通り
10 1通り
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - - - 2 2 1 1 1 0
5
- 34. 階段の問題:解法2
0 2 4 6
7
8 10
11
9
12
13
13
14
3
9 11
12
0通り
1通り
10 1通り
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - 4 - 2 2 1 1 1 0
5
- 35. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3
9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - 4 - 2 2 1 1 1 0
1通り
1通り
1通り
2通り
- 36. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3
9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - - - 4 3 2 2 1 1 1 0
1通り
1通り
1通り
2通り
- 37. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3
9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - 7 - 4 3 2 2 1 1 1 0
1通り
1通り
1通り
2通り
- 38. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3 9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - 7 - 4 3 2 2 1 1 1 0
1通り
1通り
1通り
2通り
0 3 5
(最初に3段登った場合)
6
2
3通り
2通り
- 39. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3 9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 - - 7 5 4 3 3 2 1 1 1 0
1通り
1通り
1通り
2通り
0 3 5
(最初に3段登った場合)
6
2
3通り
2通り
- 40. 階段の問題:解法2
5 7
8
0 2 4 6
7
8 10
11
9
12
13
13
14
3 9 11
12
0通り
10
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 12 - 7 5 4 3 3 2 1 1 1 0
1通り
1通り
1通り
2通り
0 3 5
6
2
3通り
2通り
- 41. 階段の問題:解法2
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 12 - 7 5 4 3 3 2 1 1 1 0
0段目から12段目までの登り方
→これが答え(12通り)
- 45. 階段の問題:解法2
何回調べないといけない?
段数 解法1で調べる回数 解法2で調べる回数
7 17 13
12 73 23
50 3,236,383(323万) 99
100 4,132,674,661,507(4兆) 199
200 6,738,660,265,660,308,8
07,737,463
399
600(東京タワー階段の段
数)
47,636,839,310,365,630,
340,208,491,560,681,036
,757,140,134,694,391,45
5,799,211,182,744,208,5
99,001
1199
- 46. 階段の問題:解法2
何回調べないといけない?
段数 解法1で調べる回数 解法2で調べる回数
7 17 13
12 73 23
50 3,236,383(323万) 99
100 4,132,674,661,507(4兆) 199
200 6,738,660,265,660,308,8
07,737,463
399
600(東京タワー階段の段
数)
47,636,839,310,365,630,
340,208,491,560,681,036
,757,140,134,694,391,45
5,799,211,182,744,208,5
99,001
1199
(だいたい)2倍
→段数に比例
- 51. 階段の問題:解法3
解法3:ある段数にいる時…
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 12 - 7 5 4 3 3 2 1 1 1 0
5
0 2 4 6
7
8 10
11
12
13
13
14
3 9 11
12
0通り
8段目から12段目に登る登り方
次に11段目に登っ
てから12段目まで
登る登り方
次に10段目に登っ
てから12段目まで
登る登り方
- 52. 階段の問題:解法3
解法3:ある段数にいる時…
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11
12段目までの登り方 12 - 7 5 4 3 3 2 1 1 1 0
5
0 2 4 6
7
8 10
11
12
13
13
14
3 9 11
12
0通り
8段目から12段目に登る登り方
次に11段目に登っ
てから12段目まで
登る登り方
次に10段目に登っ
てから12段目まで
登る登り方
- 53. 階段の問題:解法3
解法3:ある段数にいる時…
現在何段目か … N N+1 N+2 N+3 N+4 N+5 N+6 …
12段目までの登り方 … x+y - x y - - - …
N段目から12段目に登る登り方
次にN+3段目に
登ってから12段目
まで登る登り方
次にN+2段目に
登ってから12段目
まで登る登り方
N N+2
N+3
N+4
N+5
N+5
N+6
- 54. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - - - - - - 1
表を使って考える
12段目から12段目に登る登り方は
「そのまま居る」の1通りとする
- 55. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - - - - - 0 1
表を使って考える
11段目から12段目に登る登り方は、
次に13段目に登る登り方と次に14段
目に登る登り方になるが、そのよう
なものは存在しない。
- 56. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - - - - 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 57. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - - - 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 58. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - - 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 59. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - - 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 60. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - - 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 61. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - - 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 62. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - - 4 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 63. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - - 5 4 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 64. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - - 7 5 4 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 65. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 - 9 7 5 4 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
- 66. 階段の問題:解法3
現在何段目か 0 1 2 3 4 5 6 7 8 9 10 11 12
12段目までの登り方 12 9 7 5 4 3 2 2 1 1 1 0 1
表を使って考える
N+2段目から12段目までの登り方と
N+3段目から12段目までの登り方を
足し合わせて記録することを繰り返す
0段目から12段目までの登り方は
12通り
- 81. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
試合が行われていないので
「どっちも0勝」の1通りとする
- 82. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
どちらも勝利していないので、
次の試合が行われるはず
Bが勝つ
Aが勝つ
- 83. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
Bが勝つ
Aが勝つ
- 84. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
Bが勝つ
Aが勝つ
- 85. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
Bが勝つ
Aが勝つ
- 86. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 0 0 0 0 0 0 0 0 0
-1 0 1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
(同じように調べる)
- 87. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 0 0 0 0 0 0 0
-3 0 0 0 0 0 0 0 0 0 0 0
-2 0 0 1 0 0 0 0 0 0 0 0
-1 0 1 0 0 0 0 0 0 0 0 0
0 1 0 2 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0
2 0 0 1 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0
次の列も同じように進める
- 88. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 1 0 4 0 14 0 48
-3 0 0 0 1 0 4 0 14 0 48 0
-2 0 0 1 0 4 0 14 0 48 0 164
-1 0 1 0 3 0 10 0 34 0 116 0
0 1 0 2 0 6 0 20 0 68 0 232
1 0 1 0 3 0 10 0 34 0 116 0
2 0 0 1 0 4 0 14 0 48 0 164
3 0 0 0 1 0 4 0 14 0 48 0
4 0 0 0 0 1 0 4 0 14 0 48
全ての列について調べると…
- 89. ゲームの問題
(1) N=10,M=4の時
0 1 2 3 4 5 6 7 8 9 10
-4 0 0 0 0 1 0 4 0 14 0 48
-3 0 0 0 1 0 4 0 14 0 48 0
-2 0 0 1 0 4 0 14 0 48 0 164
-1 0 1 0 3 0 10 0 34 0 116 0
0 1 0 2 0 6 0 20 0 68 0 232
1 0 1 0 3 0 10 0 34 0 116 0
2 0 0 1 0 4 0 14 0 48 0 164
3 0 0 0 1 0 4 0 14 0 48 0
4 0 0 0 0 1 0 4 0 14 0 48
全ての列について調べると…
ちょうど10回目にAが勝利する…答え
- 93. おまけ:その他の問題
た し 算は二つの数から一つの数を求める計算で、三つ以上の数をたすときには、二つの数のたし算を
くり返していくことになります。例えば 1+2+3や1+2+ 3+4を、カッコを用いて二つの数のたし算で
書き表す方法は、次のようにそれぞれ二通り、五通りあります。
1+(2+3)、(1+2)+3・・・二通り
1+(2+(3+4))、1+((2+3)+4)、(1+2)+(3+4)、(1+(2+3))+4、((1+2)+3)+4・・・五通り
(注意) 1+(3+2)のように、たす数を並べ替えることは考えません。
このような式を完全式と呼ぶことにします。次のような式は完全式ではありません。
1+2+3、1+(2+3)+4 、(1+2+3)+4 (三つをたしている)
1+2+3+4 (四つをたしている)
(1) 1+2+3+4+5 には何通りの完全式がありますか。
(2) 1+2+3+4+5+6には何通りの完全式がありますか。
→1+2+…+Nには何通りの完全式がありますか。
(洛南中学2001年度算数)
- 94. 1+2+3+4+5+6について完全式で表すとき、
1,2,3,4,5,6
1+2,2+3,3+4,4+5,5+6,
1+2+3,2+3+4,3+4+5,4+5+6,
1+2+3+4,2+3+4+5,3+4+5+6,
1+2+3+4+5,2+3+4+5+6
の小さな部分ついて完全式で表すという問題に分割できる!
おまけ:その他の問題
- 98. おまけ:計算量と倍々とんち話
(この部分は生徒からの質問に応じて見せれば良い)
1日目…1粒
2日目…2粒
3日目…4粒(2×2)
4日目…8粒(2×2×2)
…
25日目…16,777,216粒(米俵6俵分)
35日目…17,179,869,216粒(約400トン)
50日目…562,949,953,421,312粒(日本の1年間の米の生産量)
100日目…633,825,300,114,114,700,748,351,602,688粒
(世界で5000億年間に生産される米の量)
…