Dinner
时间限制:
100 ms | 内存限制:
65535 KB
难度:
1
-
描述
-
Little A is one member of ACM team. He had just won the gold in World Final. To celebrate, he decided to invite all to have one meal. As bowl, knife and other tableware is not enough in the kitchen, Little A goes to take backup tableware in warehouse. There are many boxes in warehouse, one box contains only one thing, and each box is marked by the name of things inside it. For example, if "basketball" is written on the box, which means the box contains only basketball. With these marks, Little A wants to find out the tableware easily. So, the problem for you is to help him, find out all the tableware from all boxes in the warehouse.
-
输入
- There are many test cases. Each case contains one line, and one integer N at the first, N indicates that there are N boxes in the warehouse. Then N strings follow, each string is one name written on the box. 输出
- For each test of the input, output all the name of tableware. 样例输入
-
3 basketball fork chopsticks 2 bowl letter
样例输出
-
fork chopsticks bowl
提示
- The tableware only contains: bowl, knife, fork and chopsticks.
比较简单的字符串处理,只需要每输入一个就判断是否满足要求,然后输出就行,数据量较小,直接暴力就可以了.....
输出的控制比较有技巧,需要控制空格的输出,用标记变量来控制,空格不在第一位和最后一位输出。
#include<stdio.h>
#include<string.h>
char table[4][105]={
"bowl","knife","fork","chopsticks"
};
int search(char x[])//暴力查找
{
for(int i=0;i<4;++i)
{
if(strcmp(x,table[i])==0)
{
return 1;
}
}
return 0;
}
int main()
{
int n;
while(~scanf("%d",&n))
{
char x[1005];
int kase=0;
for(int i=0;i<n;++i)
{
scanf("%s",x);
if(search(x))//存在的话,才控制输出
{
if(kase)
{
printf(" ");//不在第一个和最后一个输出
}
kase=1;//有输出,才改变状态
printf("%s",x);
}
}
printf("\n");
}
return 0;
}