数组定义到主函数外面去
by asdfghjkl010218 @ 2022-05-04 16:34:30
参考一下我的代码
```cpp
#include<bits/stdc++.h>
using namespace std;
int t[200005],g[200005],n,a[105],ans;
int main()
{
cin>>n;
for (int i=1;i<=n;i++)
{
cin>>a[i];
g[a[i]]=1;
}
for (int i=1;i<n;i++)
{
for (int j=i+1;j<=n;j++)
{
t[a[i]+a[j]]++;
}
}
for (int i=1;i<=200002;i++)
{
if (t[i]>0&&g[i]) ans++;
}
cout<<ans<<endl;
}
```
by asdfghjkl010218 @ 2022-05-04 16:35:28
相同值的元素只能计一次,
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int arr[105];
bool once[200000];
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
cin >> arr[i];
}
sort(arr, arr+n);
int cnt = 0;
for (int i = 0; i <= n-3; i++) {
for (int j = i+1; j <= n-2; j++) {
int test = arr[i]+arr[j];
if (once[test] == true) {
continue;
}
for (int k = j+1; k <= n-1; k++) {
if (test == arr[k]) {
once[test] = true;
cnt++;
break;
}
if (test < arr[k]) {
break;
}
}
}
}
cout<<cnt;
return 0;
}
```
by ccrxx @ 2022-05-10 21:55:42