码迷,mamicode.com
首页 > 其他好文 > 详细

HDU5088

时间:2014-11-03 20:54:17      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   ar   os   for   sp   

对于每个数,把它看做0和1组成的行,n个数就是n行,判断形成的矩阵中【秩】是否等于【n】

bubuko.com,布布扣
#include<iostream>
#include<cstdio>
using namespace std;
const int NO=1005;
long long s[65][NO];
long long p[NO];
int GET(long long k)
{
    int ans=0;
    while(k)
    {
        k>>=1;
        ans++;
    }
    return ans;
}
int main()
{
    freopen("1.txt","r",stdin);
    int ttt,n;
    scanf("%d",&ttt);
    while(ttt--)
    {
        for(int i=0;i<=64;i++)
            s[i][0]=0;
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            scanf("%I64d",&p[i]);
            int kkk=GET(p[i]&-p[i]);
            s[kkk][++s[kkk][0]]=p[i];
        }
        if(n>40)
        {
            puts("Yes");
            continue;
        }
        int num=0;
        for(int i=1;i<=64;i++)
            if(s[i][0])
            {
                for(int j=2;j<=s[i][0];j++)
                {
                    long long k=s[i][1]^s[i][j];
                    int kkk=GET(k&-k);
                    s[kkk][++s[kkk][0]]=k;
                }
                num++;
            }
        puts(num==n?"No":"Yes");
    }
    return 0;
}
View Code

 

HDU5088

标签:style   blog   http   io   color   ar   os   for   sp   

原文地址:http://www.cnblogs.com/Lnizei/p/4072094.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!