标签:
| Time Limit: 15000MS | Memory Limit: 228000K | |
| Total Submissions: 20015 | Accepted: 5974 | |
| Case Time Limit: 5000MS | ||
Description
Input
Output
Sample Input
6 -45 22 42 -16 -41 -27 56 30 -36 53 -37 77 -36 30 -75 -46 26 -38 -10 62 -32 -54 -6 45
Sample Output
5
Hint
Source
#include <cstdio>
#include <algorithm>
#include <vector>
#define ll long long
using namespace std;
const int MAXN = 4000+5;
int a[MAXN], b[MAXN], c[MAXN], d[MAXN];
int cd[MAXN*MAXN];
int n;
pair<vector<int>::iterator, vector<int>::iterator> it;
void solve()
{
for(int i = 0; i < n; ++i){
for(int j = 0; j < n; ++j){
cd[i*n+j] = c[i]+d[j];
}
}
sort(cd, cd+n*n);
ll res = 0;
for(int i = 0; i < n; ++i){
for(int j = 0; j < n; ++j){
int c_d = -(a[i]+b[j]);
it = equal_range(cd, cd+n*n, c_d);
res += it.second-it.first;
}
}
printf("%I64d\n", res);
}
int main()
{
scanf("%d", &n);
for(int i = 0; i < n; ++i)
scanf("%d%d%d%d", &a[i], &b[i], &c[i], &d[i]);
solve();
return 0;
}
POJ 2785 4 Values whose Sum is 0
标签:
原文地址:http://www.cnblogs.com/inmoonlight/p/5758303.html