| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 508 人关注过本帖
标题:参赛选手信息更新问题,acm提交不了
只看楼主 加入收藏
小花之清
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2013-3-27
结帖率:75%
收藏
 问题点数:0 回复次数:0 
参赛选手信息更新问题,acm提交不了
题目B:参赛选手信息更新问题

时间限制(普通/Java):2000MS/6000MS          运行内存限制:65536KByte

问题描述

 

我们知道2013“华为杯”大学生团体歌唱大赛要求每个参赛团体由3名同一年级在校学生选手组成,各位同学踊跃报名,赛事组委会收到大量参赛团体信息,包括每一个团体选手姓名、学号、年级、联系方式等。

因最近流感来袭,大赛组委会根据选手建议,决定将赛事推迟到秋季。该项决定带来的问题是:参赛团体的年级信息需要更新,其中已毕业离校参赛团队的信息需要删除。

我们将问题进行简化,大学一年级至四年级的信息依次用0、1、2、3表示,硕士研究生一年级至三年级的信息依次用4、5、6表示,给定参赛团体的年级信息,请你输出更新后的年级信息。

对于本科或者硕士已毕业选手所在参赛队伍,如果原参赛团队是本科生且没有一个选手继续读本校研究生,则该参赛团队无效,信息删除无需输出;如原参赛团队是本科生且至少一位继续本校读研究生,允许继续参赛,年级信息更新为研一;如原参赛团队是硕士生,则该团队无效,信息删除无需输出。
这里我们规定,参赛团体每位选手都正常升级或毕业。

 

问题输入

输入包括多个测试用例,首先给出测试用例数N,接着给出N个测试用例。
每一个测试用例包括多行,首先给出参赛团体总数M,本科将毕业且有选手继续读研的参赛团队数c;如果c不等于0,则接下来的1行中分别给出c个本科将要毕业且会有继续读研的参赛团队编号;后续输入m行,每行分别给出参赛团队的编号和年级信息,1≤N≤1000,1≤M≤1000,1≤c≤1000。

问题输出

输出包括多行,对于每个测试用例输出多行,每行依次输出有效的参赛团体编号,更新后的年级信息。

 

样例输入

2
6 2
2 6
1 0
2 3
3 4
4 3
5 6
6 3
4 0
1 0
程序代码:
#include <stdio.h>
int main(int argc, char* argv[])
{
    int n,m,c,i,j,bh;
    int a[1000],b[1000];
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d%d",&m,&c);
        if(c)
        {
            for(i=1;i<=c;i++)
                scanf("%d",&a[i]);
            for(i=1;i<=m;i++)
                scanf("%d%d",&bh,&b[i]);
            for(i=1;i<=m;i++)
            {
                if(b[i]==3)
                {
                    b[i]=0;
                    for(j=1;j<=c;j++)
                        if(i==a[j])
                        {b[i]=4;break;}
                }
                else if(b[i]==6)
                    b[i]=0;
                else b[i]+=1;
            }
        }
        else
        {
             for(i=1;i<=m;i++)
                scanf("%d%d",&bh,&b[i]);
             for(i=1;i<=m;i++)
                 if(b[i]==3||b[i]==6)
                     b[i]=0;
                 else b[i]+=1;
        }
        for(i=1;i<=m;i++)
            if(b[i]!=0)
            printf("%d %d\n",i,b[i]);
    }
    return 0;
}
2 0
3 6
3 6


样例输出

1 1
2 4
3 5
6 4
1 1
2 1
搜索更多相关主题的帖子: 信息 团体 在校学生 组委会 Java 
2013-05-21 11:41
快速回复:参赛选手信息更新问题,acm提交不了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016595 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved