题目:

  Here is World Cup again, the top 32 teams come together to fight for the World Champion. The teams are assigned into 8 groups, with 4 teams in each group. Every two teams in the same group will play a game (so there are totally 6 games in each group), and the winner of this game gets 3 points, loser gets 0 point. If it is a tie game, both teams get 1 point. After all games finished, we get the scoreboard, but we forget the result of each game, can you help us to figure the result of each game? We only care about the win/lose/tie result of each game, but we don’t care the goals in each game.

Input:

  The input starts with one line containing exactly one integer T, which is the number of test cases. Each test case contains four space-separated integers A, B, C, D, in a line, which indicate the points each team gets after all 6 games.

Output:

  For each test case, output one line containing Case #x: y, where x is the test case number (starting from 1) and y is “Yes” if you can point out the result of each game, or “No” if there are multiple game results satisfy the scoreboard, or “Wrong Scoreboard” if there is no game result matches the scoreboard.

Note:

  In sample case #1, the only scenaro will be: the first team wins all the three games it plays, the second team loses to the first team and wins the other two, the third team only wins the game with the fourth, and the fourth team lose all the games.

  In sample case #2, the fourth team loses all the games, and the first three teams get into a winning-cycle, but there may be two different winning-cycles: first team wins second team, second team wins third team, third team wins first team OR first team wins third team, third team wins second team, second team wins first team. We can’t figure which winning-cycle is the actual game result.

  In sample case #3, the first team get 10 points, but no team could get more than 9 points by play three games, so it is a wrong scoreboard.

题意:世界杯比赛的一个小组中有4支队伍,队伍两两之间要进行一场比赛,赢得队伍得3分,输的队伍得0分,平局双方得1分。给出四支队伍的比赛完后的得分情况,问能不能确定具体的输赢情况。

思路:每组比赛一共有如下六种情况,那就dfs枚举六种情况下每个队伍输赢的所有的分情况,如果和给出的得分情况有多组相同,就是“No”,一组相同就是“Yes”,没有相同情况就是“Wrong Scoreboard”。

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <map>
#include <set>
#include <vector>
using namespace std;
typedef long long ll;
const int maxn = 1e5+;
int a,b,c,d,ans;
int buf[]; void dfs(int x)
{
if(x == )
{
if(a == buf[] && b==buf[] && c==buf[]&& d==buf[])
ans++;
return;
}
if(x==)
{
buf[]+=;//1队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//2队伍赢
dfs(x+);
buf[]-=;
}
else if(x==)
{
buf[]+=;//1队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//3队伍赢
dfs(x+);
buf[]-=;
}
else if(x==)
{
buf[]+=;//1队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//4队伍赢
dfs(x+);
buf[]-=;
}
else if(x==)
{
buf[]+=;//2队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//3队伍赢
dfs(x+);
buf[]-=;
}
else if(x==)
{
buf[]+=;//2队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//4队伍赢
dfs(x+);
buf[]-=;
}
else if(x==)
{
buf[]+=;//3队伍赢
dfs(x+);
buf[]-=;
buf[]+=,buf[]+=;//两队平局
dfs(x+);
buf[]-=,buf[]-=;
buf[]+=;//4队伍赢
dfs(x+);
buf[]-=;
}
} int main()
{
int T,cnt = ;
scanf("%d",&T);
while(T--)
{
ans = ;
memset(buf,,sizeof(buf));
scanf("%d%d%d%d",&a,&b,&c,&d);
dfs();
if(ans==)
printf("Case #%d: Wrong Scoreboard\n",cnt++);
else if(ans == )
printf("Case #%d: Yes\n",cnt++);
else
printf("Case #%d: No\n",cnt++);
}
return ;
}

World Cup(The 2016 ACM-ICPC Asia China-Final Contest dfs搜索)的更多相关文章

  1. 2016 ACM/ICPC Asia Regional Dalian Online 1006 /HDU 5873

    Football Games Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  2. HDU 5873 Football Games 【模拟】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Football Games Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  3. 2016 ACM/ICPC Asia Regional Shenyang Online 1003/HDU 5894 数学/组合数/逆元

    hannnnah_j’s Biological Test Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K ...

  4. 2016 ACM/ICPC Asia Regional Qingdao Online 1001/HDU5878 打表二分

    I Count Two Three Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. 2016 ACM/ICPC Asia Regional Shenyang Online 1009/HDU 5900 区间dp

    QSC and Master Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  6. 2016 ACM/ICPC Asia Regional Shenyang Online 1007/HDU 5898 数位dp

    odd-even number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  7. 2016 ACM/ICPC Asia Regional Dalian Online 1002/HDU 5869

    Different GCD Subarray Query Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K ( ...

  8. HDU 5874 Friends and Enemies 【构造】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Friends and Enemies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Othe ...

  9. HDU 5889 Barricade 【BFS+最小割 网络流】(2016 ACM/ICPC Asia Regional Qingdao Online)

    Barricade Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  10. HDU 5875 Function 【倍增】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Function Time Limit: 7000/3500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...

随机推荐

  1. 利用JProfile 7分析内存OOM

    今天发现一个OOM问题,想来可能是有部分内存没有正确释放导致的 于是想到了之前使用的JProfile来分析一下 由于大概知道哪个类没有释放,可以在Memory Views里看一下对应的类有多少实例来确 ...

  2. astgo经常死机变慢?试试mysql数据碎片整理吧

    使用SSH之类的工具或navicat链接数据库后(注意:是链接数据库后哦,不是直接SSH后就弄,这样提示命令错误的) 执行下面命令(目的是对ASTGO的数据库内除话单之外的所有表进行数据碎片整理,特别 ...

  3. 2-4 Vue中的属性绑定和双向数据绑定

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. c++ class does not name a type (转载)

    转载:http://blog.csdn.net/typename/article/details/7173550 declare class does not name a type 出现这个编译错误 ...

  5. bzoj 1778: [Usaco2010 Hol]Dotp 驱逐猪猡【dp+高斯消元】

    算是比较经典的高斯消元应用了 设f[i]为i点答案,那么dp转移为f[u]=Σf[v]*(1-p/q)/d[v],意思是在u点爆炸可以从与u相连的v点转移过来 然后因为所有f都是未知数,高斯消元即可( ...

  6. wamp集成环境下帝国备份出错

    我在本地wamp环境下面使用帝国备份王时,报错信息如下: Parse error: syntaxerror, unexpected $end in D:wampwwwhuifuclassfunctio ...

  7. HTML文档中class的命名规则以及命名规范

    1.采用英文字母.数字以及“-”和“_”命名. 2.以小写字母开头,不能以数字和“-”.“_”开头. 3.命名形式:单字,连字符,下划线和驼峰. 4.使用有意义命名. 其中(3).(4)条规定主要是便 ...

  8. 洛谷 P3372 【模板】线段树 加法

    题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N.M,分别表示该数列数字的个数和操作的总个 ...

  9. laravel学习一

    Laravel 是一款简洁,优雅的一款框架,可以说是入门TP后的第二款可以选择的框架. 目录部分: app -> 自己写的代码 http -> Controller -> 控制器 b ...

  10. [C陷阱和缺陷] 第3章 语义“陷阱”

    第3章 语义"陷阱"     一个句子哪怕其中的每个单词都拼写正确,而且语法也无懈可击,仍然可能有歧义或者并非书写者希望表达的意思.程序也有可能表面上是一个意思,而实际上的意思却相 ...