不要这样开数组。
`cin >> n;
int a[n];`
没有初始化很容易出现不干净的东西
by _Logic_ @ 2023-10-24 11:27:32
### ~~可以使用全局变量~~
```cpp
#include<bits/stdc++.h>
using namespace std;
int n,a[1001],ans=0,b[1001];
int main() {
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
b[i]=2;
}
sort(a,a+n);
for(int i=0;i<n;i++){
for(int j=i+1;j<n;j++){
for(int k=0;k<n;k++){
if(a[k]==a[j]+a[i] && b[k]!=1){
ans++;
b[k]=1;
}
}
}
}
cout<<ans<<endl;
return 0;
}
```
by dangerous_DZR @ 2023-10-24 12:20:43
@[_Logic_](/user/371850) 我很好奇,这样开数组居然没有报错
by lsyleon @ 2023-10-26 23:56:09
@[lsyleon](/user/1149694)
函数内分配的空间是有限的,超出一定范围后会无法编译
by _Logic_ @ 2023-10-27 00:55:33