zoukankan      html  css  js  c++  java
  • 【ZOJ4063】Tournament(构造)

    题意:n个人要打m轮比赛

    每一轮每个人都要有一个对手。而且每个对手只能打一次。假设a与b打了,c与d打了,

    那么后面的任意一轮如果a与c打了,那么b就必须和d打

    问是否存在方案,输出字典序最小的一组,无解输出Impossible

    sigma n,m<=5e3

    思路:……这场输的心服口服

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<string>
     4 #include<cmath>
     5 #include<iostream>
     6 #include<algorithm>
     7 #include<map>
     8 #include<set>
     9 #include<queue>
    10 #include<vector>
    11 using namespace std;
    12 typedef long long ll;
    13 typedef unsigned int uint;
    14 typedef unsigned long long ull;
    15 typedef pair<int,int> PII;
    16 typedef vector<int> VI;
    17 #define fi first
    18 #define se second 
    19 #define MP make_pair
    20 #define N      210000
    21 #define M      51
    22 #define MOD 1000000007
    23 #define eps 1e-8 
    24 #define pi     acos(-1)
    25 #define oo     1010000000
    26 
    27 int lowbit(int x)
    28 {
    29     return x&(-x);
    30 }
    31 
    32 
    33 int main()
    34 { 
    35      int cas;
    36      scanf("%d",&cas);
    37      for(int v=1;v<=cas;v++) 
    38      {
    39         int n,m;
    40         scanf("%d%d",&n,&m);
    41         if(m>=lowbit(n)) printf("Impossible
    ");
    42          else
    43          {
    44              for(int i=1;i<=m;i++)
    45              {
    46                  for(int j=0;j<n-1;j++) printf("%d ",(i^j)+1);
    47                 printf("%d
    ",(i^(n-1))+1);
    48             }
    49          }        
    50     }
    51     return 0;
    52 }
    53     
  • 相关阅读:
    java线程小结1
    String和StringBuffer
    java队列的实现
    java栈的实现
    java链表
    this与super关键字总结
    JVM内存杂记1
    面试题18:删除链表节点
    面试题17:打印从 1 到最大的 n 位数
    面试题16:数值的整数次方
  • 原文地址:https://www.cnblogs.com/myx12345/p/10058289.html
Copyright © 2011-2022 走看看