@[ly_liu6](/user/658123) 注意审题,其中**有多少个数**,恰好等于集合中另外两个(不同的)数之和?
所以如果数组中一个数对应两组或多组不同的加数,只算一个答案
可以用桶来实现
by cmaths @ 2022-07-25 09:38:51
可以参考我的代码
```cpp
#include<iostream>
#include<cstdio>
using namespace std;
int n,ans;
int main(){
scanf("%d",&n);
int nums[n],ok[n];
for(int i = 0;i <= n - 1;i ++){
scanf("%d",&nums[i]);
ok[i] = 0;
}
for(int i = 0;i <= n - 1;i ++){
for(int j = 0;j <= n - 1;j ++){
if(i != j){
for(int k = 0;k <= n - 1;k ++){
if(nums[i] + nums[j] == nums[k]) ok[k] = 1;
}
}
}
}
for(int i = 0;i <= n - 1;i ++){
if(ok[i] == 1) ans ++;
}
printf("%d",ans);
return 0;
}
```
很久以前写的,码风不太行,凑合着看awa
by cmaths @ 2022-07-25 09:40:26
@[xjr300098](/user/300098) 谢谢!!!!!
by dlklwdc @ 2022-07-25 10:40:37
@[ly_liu6](/user/658123) 没事
by cmaths @ 2022-07-25 11:28:46