zoukankan      html  css  js  c++  java
  • 在 n 道题目中挑选一些使得所有人对题目的掌握情况不超过一半。

    Snark and Philip are preparing the problemset for the upcoming pre-qualification round for semi-quarter-finals. They have a bank of n problems, and they want to select any non-empty subset of it as a problemset.

    k experienced teams are participating in the contest. Some of these teams already know some of the problems. To make the contest interesting for them, each of the teams should know at most half of the selected problems.

    Determine if Snark and Philip can make an interesting problemset!

    Input

    The first line contains two integers n, k (1 ≤ n ≤ 105, 1 ≤ k ≤ 4) — the number of problems and the number of experienced teams.

    Each of the next n lines contains k integers, each equal to 0 or 1. The j-th number in the i-th line is 1 if j-th team knows i-th problem and 0 otherwise.

    Output

    Print "YES" (quotes for clarity), if it is possible to make an interesting problemset, and "NO" otherwise.

    You can print each character either upper- or lowercase ("YeS" and "yes" are valid when the answer is "YES").

    Examples
    Input
    5 3
    1 0 1
    1 1 0
    1 0 0
    1 0 0
    1 0 0
    Output
    NO
    Input
    3 2
    1 0
    1 1
    0 1
    Output
    YES
    n 道题目中挑选一些使得所有人对题目的掌握情况不超过一半。
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    bool vis[22];
    int main(){
        int n,k,x;
        scanf("%d%d",&n,&k);
        for(int i=1;i<=n;++i) {
        int sum=0;
        for(int j=1;j<=k;++j) {
            scanf("%d",&x);
            if(x) sum+=1<<(j-1);
        }
        vis[sum]=1;
        }
        bool flag=0;
        for(int i=0;i<=15;++i) for(int j=0;j<=15;++j) if(((i&j)==0)&&vis[i]&&vis[j]) flag=1; 
        if(flag) puts("YES");else puts("NO");
    }
  • 相关阅读:
    人机猜拳
    M1分数分配
    postmortem report of period M1
    视频文档分享网站场景测试说明书
    功能规格说明书
    11.9Daily Scrum
    11.6Daily Scrum
    需求博客
    11.5Daily Scrum
    11.3Daily Scrum
  • 原文地址:https://www.cnblogs.com/mfys/p/7749780.html
Copyright © 2011-2022 走看看