2 条题解
-
1
#include<iostream> #include<vector> #include<unordered_map> using namespace std; int main() { int n; cin >> n; unordered_map<int,int> mp; vector<int> vs; for(int i= 0;i<n;i++) { int num; cin >> num; mp[num] = 0; vs.push_back(num); } int count = 0; for(int i = 0;i< n - 1;i++) { for(int j = i+1;j<n;j++) { int t = vs[i]+vs[j]; if(mp.count(t)) { if(mp[t] == 0) { count++; mp[t] = 1; } } } } cout << count; return 0; }
-
0
这道题的重点在于运用好for循环与continue语句
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,x;
cin>>n;
int il[n+1];
for(int i=1;i<=n;i++){
cin>>il[i];
}
int cnt=0;
bool v;
for(int i=1;i<=n;i++){
x=il[i]; v=false; for(int j=1;j<n;j++){ if(j==i)continue; for(int k=1;k<=n;k++){ if(k==i||k==j)continue; if(il[j]+il[k]==x){ v=true; break; } } } if(v==true){ cnt++; continue; }
}
cout<<cnt;
return 0;
}
- 1
信息
- ID
- 2014
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 5
- 标签
- 递交数
- 93
- 已通过
- 35
- 上传者