回答編集履歴
1
a
answer
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
1次元配列 `array` 及び売買を行う回数 `n` が与えられたとき、
|
4
4
|
利益が最大になるパターンを見つける。
|
5
|
+
ただし、購買と売却を同じ時刻にはできないものとする。
|
5
6
|
|
6
7
|
例:
|
7
8
|
`array = [100, 20, 45, 60, 120, 300], n = 1` の場合、
|
@@ -71,4 +72,70 @@
|
|
71
72
|
tmp += '{} ~ {} '.format(begin, end)
|
72
73
|
|
73
74
|
print('intervals: {}, reward: {}'.format(tmp, p['reward']))
|
75
|
+
```
|
76
|
+
|
77
|
+
`n=1` のとき
|
78
|
+
|
79
|
+
```
|
80
|
+
intervals: 1 ~ 5 , reward: 280
|
81
|
+
intervals: 2 ~ 5 , reward: 255
|
82
|
+
intervals: 3 ~ 5 , reward: 240
|
83
|
+
intervals: 0 ~ 5 , reward: 200
|
84
|
+
intervals: 4 ~ 5 , reward: 180
|
85
|
+
intervals: 1 ~ 4 , reward: 100
|
86
|
+
intervals: 1 ~ 6 , reward: 80
|
87
|
+
intervals: 2 ~ 4 , reward: 75
|
88
|
+
intervals: 3 ~ 4 , reward: 60
|
89
|
+
intervals: 2 ~ 6 , reward: 55
|
90
|
+
intervals: 1 ~ 3 , reward: 40
|
91
|
+
intervals: 3 ~ 6 , reward: 40
|
92
|
+
intervals: 1 ~ 2 , reward: 25
|
93
|
+
intervals: 0 ~ 4 , reward: 20
|
94
|
+
intervals: 2 ~ 3 , reward: 15
|
95
|
+
intervals: 0 ~ 6 , reward: 0
|
96
|
+
intervals: 4 ~ 6 , reward: -20
|
97
|
+
intervals: 0 ~ 3 , reward: -40
|
98
|
+
intervals: 0 ~ 2 , reward: -55
|
99
|
+
intervals: 0 ~ 1 , reward: -80
|
100
|
+
intervals: 5 ~ 6 , reward: -200
|
101
|
+
```
|
102
|
+
|
103
|
+
`n=2` のとき
|
104
|
+
|
105
|
+
```
|
106
|
+
intervals: 1 ~ 2 3 ~ 5 , reward: 265
|
107
|
+
intervals: 1 ~ 3 4 ~ 5 , reward: 220
|
108
|
+
intervals: 1 ~ 2 4 ~ 5 , reward: 205
|
109
|
+
intervals: 2 ~ 3 4 ~ 5 , reward: 195
|
110
|
+
intervals: 0 ~ 2 3 ~ 5 , reward: 185
|
111
|
+
intervals: 0 ~ 1 2 ~ 5 , reward: 175
|
112
|
+
intervals: 0 ~ 1 3 ~ 5 , reward: 160
|
113
|
+
intervals: 0 ~ 3 4 ~ 5 , reward: 140
|
114
|
+
intervals: 0 ~ 2 4 ~ 5 , reward: 125
|
115
|
+
intervals: 0 ~ 1 4 ~ 5 , reward: 100
|
116
|
+
intervals: 1 ~ 2 3 ~ 4 , reward: 85
|
117
|
+
intervals: 1 ~ 2 3 ~ 6 , reward: 65
|
118
|
+
intervals: 1 ~ 3 4 ~ 6 , reward: 20
|
119
|
+
intervals: 0 ~ 2 3 ~ 4 , reward: 5
|
120
|
+
intervals: 1 ~ 2 4 ~ 6 , reward: 5
|
121
|
+
intervals: 0 ~ 1 2 ~ 4 , reward: -5
|
122
|
+
intervals: 2 ~ 3 4 ~ 6 , reward: -5
|
123
|
+
intervals: 0 ~ 2 3 ~ 6 , reward: -15
|
124
|
+
intervals: 0 ~ 1 3 ~ 4 , reward: -20
|
125
|
+
intervals: 0 ~ 1 2 ~ 6 , reward: -25
|
126
|
+
intervals: 0 ~ 1 3 ~ 6 , reward: -40
|
127
|
+
intervals: 0 ~ 3 4 ~ 6 , reward: -60
|
128
|
+
intervals: 0 ~ 1 2 ~ 3 , reward: -65
|
129
|
+
intervals: 0 ~ 2 4 ~ 6 , reward: -75
|
130
|
+
intervals: 0 ~ 1 4 ~ 6 , reward: -100
|
131
|
+
intervals: 1 ~ 4 5 ~ 6 , reward: -100
|
132
|
+
intervals: 2 ~ 4 5 ~ 6 , reward: -125
|
133
|
+
intervals: 3 ~ 4 5 ~ 6 , reward: -140
|
134
|
+
intervals: 1 ~ 3 5 ~ 6 , reward: -160
|
135
|
+
intervals: 1 ~ 2 5 ~ 6 , reward: -175
|
136
|
+
intervals: 0 ~ 4 5 ~ 6 , reward: -180
|
137
|
+
intervals: 2 ~ 3 5 ~ 6 , reward: -185
|
138
|
+
intervals: 0 ~ 3 5 ~ 6 , reward: -240
|
139
|
+
intervals: 0 ~ 2 5 ~ 6 , reward: -255
|
140
|
+
intervals: 0 ~ 1 5 ~ 6 , reward: -280
|
74
141
|
```
|