练习专区

今天的一小步就是明天的一大步
Problem 1649 武林大会
Accepted: 1   Total Submit: 12
Time Limit: 1000ms   Memory Limit: 30720KB
Description
江湖召开武林大会,武林盟主大撒英雄帖,邀请各自然数英雄们都来参加,大会的一项重要活动就是比武选出108位英雄。 比武的规则是这样的: 如果参加比武的自然数是合数,则该自然数直接退出比赛,名次为0; 如果参加比武的自然数是素数,则该自然数在英雄榜的座次就是他在所有素数中的顺序号。 比如自然数2就是当然的老大,而自然数5则排名第3。 现在请你做该武林大会的裁判,对每一位参加比赛的自然数给出他们在英雄榜上的排名。 供参考的main函数:其中的Hero是个类,其成员函数show()用于输出数字的名次。 void main() { int n; int k = 1; int num; Hero *h = NULL; while(cin>>n) { cout<<"第"<>num; h = new Hero(num); h->show(); } } }
Input
输入有多组,每组的包含2行数据:第1行是个正整数N表示接下来有N位自然数英雄参加比武,第2行是有空格分隔的N个自然数。
Output
输出每一组的比武结果,若为合数输出0,若为素数输出其名次。
Sample Input
10
2 4 6 8 10 9 7 5 3 1
Sample Output
第1轮比武结果:
2:1
4:0
6:0
8:0
10:0
9:0
7:4
5:3
3:2
1:0
Hint
提交     返回