文档章节

HDU2094-产生冠军

 木宛城主
发布于 2015/03/02 19:43
字数 417
阅读 31
收藏 0

问题描述

Problem Description
有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。
球赛的规则如下:
如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。
如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。
根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场撕杀之后,确定是否已经实际上产生了冠军。
 

 

Input
输入含有一些选手群,每群选手都以一个整数n(n<1000)开头,后跟n对选手的比赛结果,比赛结果以一对选手名字(中间隔一空格)表示,前者战胜后者。如果n为0,则表示输入结束。
 

 

Output
对于每个选手群,若你判断出产生了冠军,则在一行中输出“Yes”,否则在一行中输出“No”。
 

 

Sample Input
3
Alice Bob
Smith John
Alice Smith
5
a c
c d
d e
b e
a d
0
 

 

Sample Output
Yes
No
 

 

Author
qianneng
 

 

Source
 

 

Recommend
lcy

 

 

解决方案

#pragma warning(disable:4786)
#include <set>
#include <map>
#include <string>
#include <iostream>
using namespace std;

int main(void)
{
    int n, i, t;
    string b, e;
    set <string> s;
    set <string>::iterator it;
    map <string, string> m;
    map <string, string>::iterator iter;

    while (cin >> n, n)
    {
        s.clear();
        m.clear();
        for (i = 0; i < n; i++)
        {
            cin >> b >> e;
            s.insert(b);
            s.insert(e);
            m[e] = b;
        }
        for (t = 0, it = s.begin(); it != s.end(); it++)
        {
            if (!m[*it].length())
                t++;
        }
        puts(t == 1 ? "Yes" : "No");
    }

    return 0;
}

 

 

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 222
码字总数 199010
作品 0
黄浦
私信 提问
她是最年轻的女单世界冠军 打法赏心悦目

今天要聊的这位球员,年纪轻轻便崭露头角。年仅14岁时就拿到了世界冠军,获得2009年世青赛女单冠军,并且在2010年成功卫冕。她就是因达农,目前世界排名第4 因达农出生于1995年,从6岁开始打...

小特羽毛球
06/12
0
0
2018-11-01-今日得到-《成功演讲的奥秘》

今天分享的主题来自得到的每天听本书系列之《成功演讲的奥秘》 关于作者 杰里米·唐诺文 - 高德纳公司营销副总裁。高德纳公司是全球领先的信息技术研究和咨询公司,年营业额达16亿美元。杰里...

韬声依旧在路上
11/02
0
0
迅雷区块链应用大赛十强诞生 他们的脑洞可以这么大

经过新一轮的筛选,迅雷全球区块链应用开发大赛十强名单正式决出。来自中美两国的十只队伍成功晋级,闯进了最终决赛,本次大赛的最终冠军将从他们之中产生。 这十支队伍分别是(排名不分先后...

码云Gitee
06/29
0
0
2018世界杯冠军是谁?来看看AI预测的结果

  2010年南非世界杯,神奇的章鱼保罗因成功连续预测了8场赛事而名扬世界。   八年,弹指一挥间。这一届的世界杯冠军又将花落谁家?显然,章鱼保罗已然指望不上了,但新的技术已经迫不及待...

深度学习
06/15
0
0
号外|陈黎明:资本过度追捧会导致AI行业产生泡沫

2018年夏季达沃斯于9月18日在天津开幕。IBM大中华区董事长陈黎明在接受号外专访时表示,资本的疯狂追捧确实会导致人工智能领域产生泡沫。但他指出,这种现象很正常。当一项新的科技出现了以后...

网易号外
09/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

以太坊Token通证或者代币的真正作用是什么?

上一篇文章以太坊(Ethereum)与以太(Ether)中,你应该很好地理解以太坊是如何构建以太坊应用程序网络的,这些应用程序需要一个名为Ether的加密货币来运行。现在是时候引入一个更深层的概念...

笔阁
25分钟前
3
0
PHP - 利用P3P实现跨域

P3P是什么 P3P Platform for Privacy Preferences, 是W3C公布的一项隐私保护推荐标准,以为用户提供隐私保护。 P3P标准的构想是:Web 站点的隐私策略应该告之访问者该站点所收集的信息类型、...

hansonwong
25分钟前
2
0
传统SSM框架之微信授权登陆

1、jdbc.properties (下面瞎写的值) WEIXIN_APP_ID=wx5438496a99c8d26acbWEIXIN_APP_SECRET=d070fjcwiefhwr38942dw 2、获取配置属性 /** * @Author:Mujiutian * @Description:微信参......

木九天
26分钟前
2
0
以太坊(Ethereum)与以太(Ether)为什么容易混淆?

客观的来说,以太坊与以太这两个概念很容易混淆。 当我们听到以太坊Ethereum这个词时,我们通常会将它与加密货币(比如比特币)联系起来。虽然这个定义并不完全错误。但重要的是要理解以太坊...

geek12345
28分钟前
2
0
ROS实操笔记四 msg 和srv

msg: msg files are simple text files that describe the fields of a ROS message. They are used to generate source code for messages in different languages. srv: an srv file descr......

placido
28分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部