
开始 比赛 , 每一次的 比赛 都会有人失败 , 如果产生英雄的话 , 那就是产生 唯一一个 没有被打败的人 , 就是英雄, .
1 #include<stdio.h>
2 #include<string.h>
3 #include<math.h>
4 #include<iostream>
5 #include<algorithm>
6 #include<queue>
7 #include<vector>
8 #include<set>
9 #include<stack>
10 #include<string>
11 #include<sstream>
12 #include<map>
13 #include<cctype>
14 #include<limits.h>
15 using namespace std;
16 int main()
17 {
18 int n;
19 while(scanf("%d",&n),n) // 多学习一点 容器 ...
20 {
21 map<string,int>mm; // 用 一个 map 去做映射 ........ // map 做映射的时候 默认的值 就是 0
22 for(int i=0;i<n;i++) // 开始 n 对 对手 之间的博弈 .
23 {
24 char a[100],b[100];
25 scanf("%s%s",a,b); //
26 mm[a]++; //
27 mm[b]=INT_MIN; //
28 }
29 map<string,int>::iterator it; // 相当于 声明一个 类似于 指针的 东西 .
30 int ans=0;
31 for(it=mm.begin();it!=mm.end();it++) // 从 开始的地方开始 ,
32 if((it->second)>0) // 每一次 都 向下 , 寻找 .
33 ans++;
34 if(ans==1)
35 printf("Yes
"); // // 当 最后 只有一个人没有被打败过 这个人就是 第一
36 else
37 printf("No
");
38 }
39 }