UVA 10125(p89)----Sumsets

#include
#define debu
using namespace std;
typedef long long LL;
const int maxn=1e3+50;
const LL INF=1e10;
int n;
set s;
LL a[maxn];
map > num;
int check(LL x,LL y)
{
    LL tmp=x-y;
    /*if(s.count(tmp))
    {
        cout<

题目地址:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1066

题解:中途相遇法。n^2枚举所有a+b的和,n^2枚举两数相减,map[x][0],map[x][1],表示对于和x,使用的数为map[x][0],map[x][1],set记录x是否出现过,若x已存在且两数未使用则更新答案。

你可能感兴趣的:(ACM)