【瞎搞】 ZOJ 3180 Number Game

来源:互联网 发布:数据结构出栈算法 编辑:程序博客网 时间:2024/05/17 18:14

点击打开链接

题意:右边的三个数能否通过 去除一个数,并添上 另外两个数的和 再 减一



#include <cstdio>#include <cstring>#include <cstdlib>#include <string>#include <iostream>#include <algorithm>#include <sstream>#include <cmath>using namespace std;#include <queue>#include <stack>#include <vector>#include <deque>#include <set>#include <map>#define cler(arr, val)    memset(arr, val, sizeof(arr))typedef long long  LL;const int MAXN = 10100;const int MAXM = 11111;const int INF = 0x3f3f3f3f;#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1int t,a[22],b[22];int main(){    cin>>t;    while(t--)    {        for(int i=1;i<=3;i++) cin>>a[i];        for(int i=1;i<=3;i++) cin>>b[i];        sort(a+1,a+3+1),sort(b+1,b+3+1);        int flag=0;        while(true)        {            if(a[1]==b[1]&&a[2]==b[2]&&a[3]==b[3])            {                flag=1;break;            }            if(a[1]==b[1]&&a[2]==b[2]&&a[3]==b[1]+b[2]-1)//12            {                flag=1;break;            }            if(a[1]==b[1]&&a[2]==b[3]&&a[3]==b[1]+b[3]-1)//13            {                flag=1;break;            }            if(a[1]==b[2]&&a[2]==b[3]&&a[3]==b[2]+b[3]-1)//23            {                flag=1;break;            }            if(a[1]==1) break;            if(a[1]<b[1]&&a[2]<b[2]&&a[3]<b[3])                break;            a[3]=a[2]-a[1]+1;            sort(a+1,a+3+1);        }        if(flag) puts("Yes");        else puts("No");    }    return 0;}


0 0
原创粉丝点击