ZOJ1101-Gamblers 终于AC。。。

来源:互联网 发布:手机阿里云登录 编辑:程序博客网 时间:2024/05/29 06:32

这题首先要注意最后赢家的赌资并不一定比另三个都大,因为负数的存在;另外。。。还要注意四个人下标都不能相等



#include <stdio.h>#include <cmath>#include <algorithm>#include <cstring>#include<vector> #include <functional>using namespace std;bool cmp(int a,int b){return a>b;}int main(){int q[1005],i,j,k,m,n,re,flag;while(scanf("%d",&n)&&n){flag=0;for(i=0;i<n;i++)scanf("%d",&q[i]);sort(q,q+n,cmp);for(i=0; i<n-1; i++){for(j=0; j<n; j++){if(j==i) continue;for(k=0; k<n; k++){if(k==i||j==k) continue;for(m=0; m<n; m++){if(m==i||m==j||m==k) continue;if(q[i]==q[j]+q[k]+q[m]){flag=1;re=q[i];goto aaa;}}}}}aaa: if(flag)printf("%d\n",re);else printf("no solution\n");}return 0;}


0 0