PTAL1-049 天梯赛座位分配 题目 打印正确但是评测显示错误

天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:
假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,
第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员……
以此类推。如果最后只剩下 1 所学校的队伍还没有分配座位,则需要安排他们的队员隔位就坐。本题就要求你编写程序,自动为各校生成队员的座位号,从 1 开始编号。
输入格式:
输入在一行中给出参赛的高校数 N (不超过100的正整数);第二行给出 N 个不超过10的正整数,其中第 i 个数对应第 i 所高校的参赛队伍数,
数字间以空格分隔。
输出格式:
从第 1 所高校的第 1 支队伍开始,顺次输出队员的座位号。每队占一行,座位号间以 1 个空格分隔,行首尾不得有多余空格。
另外,每所高校的第一行按“#X”输出该校的编号X,从 1 开始。
输入样例:
3
3 4 2
输出样例:
#1
1 4 7 10 13 16 19 22 25 28
31 34 37 40 43 46 49 52 55 58
61 63 65 67 69 71 73 75 77 79
#2
2 5 8 11 14 17 20 23 26 29
32 35 38 41 44 47 50 53 56 59
62 64 66 68 70 72 74 76 78 80
82 84 86 88 90 92 94 96 98 100
#3
3 6 9 12 15 18 21 24 27 30
33 36 39 42 45 48 51 54 57 60

思路是看有多少学校,打印出一个队伍,与此同时其他学校各减少一个队伍,不断循环。直到自己学校队伍打印完。

#include <stdio.h>
#include <string.h>

int main()
{
    int n,m=0;
    int team[105],teams[105];
    int seat =1,a;
    int i,j,k,l;
    scanf("%d",&n);
    for(i=0; i<n; i++)
    {
        scanf("%d",&team[i]);
    }
    for(i=0; i<n; i++)
    {
        for(l=0; l<n; l++)
        {
            teams[l]=team[l];
        }
        printf("#%d\n",i+1);
        seat=i+1;

        while(teams[i])
        {
            m=0;
            //统计现有学校数目;
            for(j=0; j<n; j++)
            {
                if(teams[j]!=0) m++;
            }
  //然后打印
            if(m==1){
                for(k=0; k<9; k++)
                {
                    printf("%d ",seat++);
                    seat+=m;
                }
            printf("%d",seat++);}
            else
            {
                for(k=0; k<9; k++)
                {
                    printf("%d ",seat);
                    seat+=m;
                }
                printf("%d",seat);
                seat+=m;
            }
            printf("\n");
            for(j=0; j<n; j++)
            {
                if(teams[j]!=0) teams[j]--;
            }
        }
    }

}

图片说明
图片说明

0

1个回答

你只通过给你的样例是不行的,它验证的样例肯定不是给你的那些。

https://www.cnblogs.com/8023spz/p/8746867.html

0
qq_16232497
qq_16232497 谢谢你~
4 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!

相似问题

1
PTAL1-049 天梯赛座位分配 题目 打印正确但是评测显示错误
4
为什么scoket连接云服务器的22端口能连通,但是连接自己定义的TCP:8888等等端口就连不通
2
归并排序问题,代码是按照教学视频打的,为什么会出错,显示一些奇奇怪怪的数字
2
//求助帖,求助帖,练习c++时的一个错误
4
求助大佬:MFC检测扩展显示器时回调函数错误怎么解决。
3
c++内存分配 a ,b,c,和obj是如何分配空间的
2
C语言编译时,提示invalid conversion from ‘char’ to ‘char*’ [-fpermissive]错误,请问哪里问题?
2
求助大佬:MFC检测扩展显示器时回调函数错误怎么解决?
2
C++段错误的问题,题目为PAT甲级1095
2
【c++】为什么运行程序显示指令引用了0x内存,该内存不能为written
0
HDU 2068 一道错排+组合的简单题。。但是不懂一个可以互换的小细节为什么一个能AC一个就是会WA。。。
3
vs2017连接MySQL运行时出现如下错误,求解
0
webserver单步调试显示已经接收到数据,还是显示404,为什么呢
2
jasvascript语言怎么自定义ie浏览器的菜单,比如不允许打印的功能的调用
1
javascrpt实现摄像头拍照上传到网站,同时要能把图片缩略图在页面上显示
2
string转换为Cstring时,format显示没有此成员,这是为什么?
1
MFC中文件打开对话框显示不出来?
2
关于一串数字的倒序输出(落谷题目)
1
C++题目,求教,输出不了结果。
2
用ADO 连接本地的oracle数据库,报ora 80004005的错误