给你四个集合。要你从这四个集合中
各取出一个数出来,推断,取出的前三个数的和
是否等于第四个数。
数据比較大。我的做法是将
前两个集合全部数全部和的情况取出来,
然后二分查找第四个集合和第三集合取出的数的差值。
我比較懒。用了stl中的bsearch实现二分查找。
代码例如以下:
#include#include using namespace std;int num_a,num_b,num_c,a[510],b[510],c[510],ab[250010];int cmp(const void *a,const void *b){ return *(int *)a - *(int *)b;}void init(){ int num_x,x,*p,tmp; for(int i=0;i