读书人

一道ACM题。因学校是内网所以发地址没

发布时间: 2012-03-23 12:06:21 作者: rapoo

一道ACM题。因学校是内网所以发地址没有用。请学长们help~
谁讲题呢?

--------------------------------------------

Time limit: 1000MS Memory limit: 32768K
Total Submit: 1727 Accepted: 257


--------------------------------------------

每次比赛之后,队伍里面总是要一起来讨论题目。讨论题目的第一个步骤就是讲解题目的意思。应该怎么确定谁上去讲解题目意思呢?随机点名吧。

输入:


输入文件中有多组case。每一组case第一行包含一个整数N(1 <= N <= 1000),表示队员的人数。接下来的N行包含2个值:字符串name(长度不超过64)和整数id(1 <= id <= N),表示队员的名字和他(她)的号码, name 和 id之间有一个空格隔开, id是唯一的。 接下来那行包含一个整数K(0 <= K <= (2^31-1)),在接下来的K行中,每一行包含一个整数x(1 <= x <= 1000),表示随机产生的id号。



输出:


对应最后K行的每一个id号,每一行输出队员的name,要是这个id对应的name不存在,输出 "void";
输出中每两个case之间用一个空行格开。



Sample Input:
5
SeedJYH 1
Php 2
half 3
rene 4
Heart 5
4
1
1
1
1



Sample Output:
SeedJYH
SeedJYH
SeedJYH
SeedJYH




[解决办法]

C/C++ code
#include <stdio.h>#include <string.h>int main(){    int i,k,index,n;    char a[1005][70],tm[70],tid;    while(scanf("%d",&n)!=EOF&&n!=0)    {        memset(a,0,sizeof(a));        for(i = 0;i < n;i++)        {            scanf("%s%d",tm,&tid);            strcpy(a[tid],tm);        }        scanf("%d",&k);        for(i = 0;i<k;i++)        {            scanf("%d",&index);            puts(a[index]);        }    }    return 0;} 

读书人网 >C语言

热点推荐