注: 本入不知道这是不是自己遇到的独有Bug
#include<bits/stdc++.h>
using namespace std;
const int Mod = 1e9+7;
int main(){
int n,w;
cin >> n >> w;
int a[n+1] = {0};
for(int i =1;i<=n;i++) cin >> a[i];
int dp[n+5][w+5];
// 剩下代码去看Timmark的题解
return 0;
}
Timmark的题解 感谢Timmark大佬
然后我得到了一个极其猎奇的值
−638652068
于是我做了一下测试
#include<bits/stdc++.h>
using namespace std;
int main(){
int a = 1,b=5;
int array_1[1][5] = {0};
int array_2[a][b] = {0};
cout << "Array_1 : ";
for(int i = 0;i<5;i++){
cout << array_1[0][i] << " ";
}
cout << endl;
cout << "Array_2 : ";
for(int i = 0;i<5;i++){
cout <<array_2[0][i] << " ";
}
return 0;
}
然后我得到了猎奇的结果
Array_1 : 0 0 0 0 0
Array_2 : 0 32758 771430272 32758 1304175528
??????????????????????????????????????????
于是我又做了一下测试
#include<bits/stdc++.h>
using namespace std;
#define a1 1
#define b1 5
int main(){
const int a2 = 1,b2=5;
int array_1[a1][b1] = {0};
int array_2[a2][b2] = {0};
cout << "Array_1 : ";
for(int i = 0;i<5;i++){
cout << array_1[0][i] << " ";
}
cout << endl;
cout << "Array_2 : ";
for(int i = 0;i<5;i++){
cout <<array_2[0][i] << " ";
}
return 0;
}
得到的结果却很正常
Array_1 : 0 0 0 0 0
Array_2 : 0 0 0 0 0
"咱也不知道这是不是Bug 咱也不敢问(问不着)"
建议:
memset(array_2,0,sizeof(array_2));
求大佬帮本蒟蒻忙解答为什么
¯\_(ツ)_/¯