There are literally dozens of snooker competitions held each year, and team Jinotega tries to attend them all (for some reason they prefer name "snookah")! When a competition takes place somewhere far from their hometown, Ivan, Artsem and Konstantin take a flight to the contest and back.
Jinotega's best friends, team Base have found a list of their itinerary receipts with information about departure and arrival airports. Now they wonder, where is Jinotega now: at home or at some competition far away? They know that:
- this list contains all Jinotega's flights in this year (in arbitrary order),
- Jinotega has only flown from his hometown to a snooker contest and back,
- after each competition Jinotega flies back home (though they may attend a competition in one place several times),
- and finally, at the beginning of the year Jinotega was at home.
Please help them to determine Jinotega's location!
In the first line of input there is a single integer n: the number of Jinotega's flights (1 ≤ n ≤ 100). In the second line there is a string of 3 capital Latin letters: the name of Jinotega's home airport. In the next n lines there is flight information, one flight per line, in form "XXX->YYY", where "XXX" is the name of departure airport "YYY" is the name of arrival airport. Exactly one of these airports is Jinotega's home airport.
It is guaranteed that flights information is consistent with the knowledge of Jinotega's friends, which is described in the main part of the statement.
If Jinotega is now at home, print "home" (without quotes), otherwise print "contest".
4 SVO SVO->CDG LHR->SVO SVO->LHR CDG->SVO
home
3 SVO SVO->HKT HKT->SVO SVO->RAP
contest
In the first sample Jinotega might first fly from SVO to CDG and back, and then from SVO to LHR and back, so now they should be at home. In the second sample Jinotega must now be at RAP because a flight from RAP back to SVO is not on the list.
题目大意:
一开始这个人是在家的,每一次打比赛都是双航向(一条要从家到比赛地点,一条从比赛地点回家)。
给出的N个航班是不按照顺序给出的,所以让你判断,最终这个人是在家还是在外边。
思路:
很明显,如果想要最终在家,n要是偶数,并且回家的航班次数为n/2
否则就是最终在外边的情况。
Ac代码:
#include<stdio.h>
#include<string.h>
#include<map>
#include<cstring>
#include<iostream>
using namespace std;
int main()
{
int n;
while(~scanf("%d",&n))
{
int tmp=n;
char a[10];
char b[10];
map<string ,int >s;
scanf("%s",a);
s[a]=1;
int output=0;
while(n--)
{
scanf("%s",a);
int cnt=0;
for(int j=5;j<8;j++)
{
b[cnt++]=a[j];
}
b[cnt]='\0';
if(s[b]==1)output++;
}
if(tmp%2==0&&output==tmp/2)printf("home\n");
else printf("contest\n");
}
}