首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

一道ACM题。因学校是内网所以发地址没有用。请学长们help~该怎么解决

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

一道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:

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;} 

热点排行