编程比赛有三大赛制(ACM赛制、OI赛制、IOI赛制),各具特色。
ACM赛制:每道题提交之后都有实时反馈,可以看到“通过”、“运行错误”、“答案错误”等等结果,但看不到错误的测试样例。每道题都有多个测试点,每道题必须通过了所有的测试点才算通过。每道题不限制提交次数,但没通过的话会有罚时,仅以最后一次提交为准。比赛过程中一般可以看到实时排名,通过题数相同的情况下按照答题时间+罚时来排名。
ACM赛制的比赛:XCPC等。
OI赛制:每道题提交之后都没有任何反馈,每道题都有多个测试点,根据每道题通过的测试点的数量获得相应的分数。每道题不限制提交次数,如果提交错误没有任何惩罚,仅以最后一次提交为准。比赛过程中看不到实时排名,赛后按照总得分来排名。
OI赛制的比赛:蓝桥杯等。
IOI赛制:每道题提交之后都有实时反馈,可以看到“通过”、“运行错误”、“答案错误”等等结果,同时也可以看到实时得分,但看不到错误的测试样例。每道题都有多个测试点,根据每道题通过的测试点的数量获得相应的分数。每道题不限制提交次数,如果提交错误没有任何惩罚,仅以最后一次提交为准。比赛过程中一般可以看到实时排名,按照总得分来排名。可以说,IOI赛制是结合了OI赛制和ACM赛制的特点。
IOI赛制的比赛:团体程序设计天梯赛(下面简称“天梯赛”)等。
“爆0”是指在编程竞赛中没有一道题完全做对,出现在ACM赛制的竞赛中。
与“爆0”相对的就是“ak”,所谓的“ak”是指每一道题都完全做对。
还有就是“ac”,“ac”是指通过了某道题的全部测试点,即这道题拿了满分。
天梯赛的竞赛题目一共有15题,题目的分值依次为5,5,10,10,15,15,20,20,25,25,25,25,30,30,30
。
炫为了在开学后的天梯赛中一鸣惊人,寒假中一有时间就刷一套标准天梯赛考卷。寒假短短,但是炫却过得无比充实!炫总共刷了N
套考卷,贴心的chocola对炫的每套考卷都会参考acm赛制给出评语。
给出评语的规则如下:
如果炫在这套考题中“ak”了,即在全部的15题中每一题都拿到了相应题的满分,则给出评语xuan ak la!
如果炫在这套考题中“爆0”了,即在全部的15题中每一题都没有拿到相应题的满分,则给出评语xuan bao ling la!
如果炫在这套考题中“ac”的题目数量大于总题目数量的一半,则给出评语xuan hai xing ba!
如果炫在这套考题中有“ac”的题目,但是“ac”的题目数量小于总题目数量的一半,则给出评语xuan jia you ba!
输入格式:
在第一行给出一个正整数N
(0<N
<100),表示考卷的套数。
在接下来N
行,每行给出15个整数,表示这一套试卷的详细分值,第i个整数表示第i题的得分情况。
注:天梯赛第1题至第15题的分值依次为:5,5,10,10,15,15,20,20,25,25,25,25,30,30,30
输出格式:
输出N
行,第i行表示根据炫的第i套试卷的得分情况给出相应评语。
如果炫“ak”了,则打印xuan ak la!
如果炫“爆0”了,则打印xuan bao ling la!
如果炫“ac”的数量大于总题目数量的一半,则打印xuan hai xing ba!
如果炫有题目“ac”,但是“ac”的数量小于总题目数量的一半,则打印xuan jia you ba!
输入样例:
3
5 5 10 10 15 15 20 20 25 25 25 25 30 30 30
3 1 5 7 12 14 18 13 20 23 18 20 0 0 0
5 5 10 10 15 15 20 20 1 2 3 4 1 2 3
输出样例:
xuan ak la!
xuan bao ling la!
#include<iostream>
using namespace std;
int main()
{
int a[15] = { 5,5,10,10,15,15,20,20,25,25,25,25,30,30,30 };
int b[15];
int n,ac;
cin >> n;
for (int i = 0; i < n; i++) {
ac = 0;
for (int j = 0; j < 15; j++) {
cin >> b[j];
if (b[j] == a[j])
ac++;
}
if (ac == 15)
cout << "xuan ak la!" << endl;
else if (ac == 0)
cout << "xuan bao ling la!" << endl;
else if (ac >= 8)
cout << "xuan hai xing ba!" << endl;
else if (ac < 8 && ac>0)
cout << "xuan jia you ba!" << endl;
}
}