質問編集履歴

1

コードの追加

2021/01/25 11:00

投稿

ibis_k
ibis_k

スコア2

test CHANGED
File without changes
test CHANGED
@@ -2,17 +2,13 @@
2
2
 
3
3
  visual studio で#include<algorithm> using namespace std;
4
4
 
5
- としてmin, max 関数を使おうとすると以下のなエラーが出てしまいます。
5
+ としてmin, max 関数を使おうとすると以下のようなエラーが出てしまいます。
6
6
 
7
7
  algorithm をincludeしているのに何故でしょうか。
8
8
 
9
9
 
10
10
 
11
- ここに質問の内容を詳しく書いてください。
12
11
 
13
- (例)PHP(CakePHP)で●●なシステムを作っています。
14
-
15
- ■■な機能を実装中に以下のエラーメッセージが発生しました。
16
12
 
17
13
 
18
14
 
@@ -32,9 +28,83 @@
32
28
 
33
29
 
34
30
 
35
- ```ここに言語名を入力
31
+ ```c++
36
32
 
33
+ #include<iostream>
34
+
35
+ #include<cmath>
36
+
37
+ #include<algorithm>
38
+
39
+
40
+
41
+ using namespace std;
42
+
43
+
44
+
45
+ #define INF 10000000;
46
+
47
+ #define rep(i,n) for (int i=0;i<n;i++)
48
+
49
+
50
+
51
+ const int maxN=9;
52
+
53
+ int N, A, B, C;
54
+
55
+ int ls[maxN];
56
+
57
+
58
+
59
+ int dfs(int ind, int a, int b, int c){
60
+
61
+ if(ind==N){
62
+
63
+ if(min(a,b,c)>0){
64
+
65
+ return abs(a-A)+abs(b-B) + abs(c-C) -30;
66
+
67
+ }
68
+
37
- ソースコード
69
+ else{
70
+
71
+ return INF;
72
+
73
+ }
74
+
75
+ }
76
+
77
+ int ret0 = dfs(ind+1, a, b, c);
78
+
79
+ int ret1 = dfs(ind+1, a+ls[ind], b, c) + 10;
80
+
81
+ int ret2 = dfs(ind+1, a, b+ls[ind], c) + 10;
82
+
83
+ int ret3 = dfs(ind+1, a, b, c+ls[ind]) + 10;
84
+
85
+ return min(ret0, ret1, ret2, ret3);
86
+
87
+ }
88
+
89
+
90
+
91
+
92
+
93
+ int main(){
94
+
95
+ cin >> N >> A >> B >> C;
96
+
97
+ rep(i,N) cin >> ls[i];
98
+
99
+
100
+
101
+ int res = dfs(0,0,0,0);
102
+
103
+ cout << res << endl;
104
+
105
+ return 0;
106
+
107
+ }
38
108
 
39
109
  ```
40
110