zoukankan      html  css  js  c++  java
  • 1059. C语言竞赛(20)

    1059. C语言竞赛(20)

    时间限制
    200 ms
    内存限制
    65536 kB

    C语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛。既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽:

    0. 冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……)。
    1. 排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶!
    2. 其他人将得到巧克力。

    给定比赛的最终排名以及一系列参赛者的ID,你要给出这些参赛者应该获得的奖品。

    输入格式:

    输入第一行给出一个正整数N(<=10000),是参赛者人数。随后N行给出最终排名,每行按排名顺序给出一位参赛者的ID(4位数字组成)。接下来给出一个正整数K以及K个需要查询的ID。

    输出格式:

    对每个要查询的ID,在一行中输出“ID: 奖品”,其中奖品或者是“Mystery Award”(神秘大奖)、或者是“Minion”(小黄人)、或者是“Chocolate”(巧克力)。如果所查ID根本不在排名里,打印“Are you kidding?”(耍我呢?)。如果该ID已经查过了(即奖品已经领过了),打印“ID: Checked”(不能多吃多占)。

    输入样例:
    6
    1111
    6666
    8888
    1234
    5555
    0001
    6
    8888
    0001
    1111
    2222
    8888
    2222
    
    输出样例:
    8888: Minion
    0001: Chocolate
    1111: Mystery Award
    2222: Are you kidding?
    8888: Checked
    2222: Are you kidding?

    分析:
      用string prize[0~5]表示各种查询回复;用int got[]表示得到的奖品或回复种类;
      每次询问输入int x,则直接输出prize[got[x]],并把got[x]!=0(即ID存在)的设为4(已经领过了)。
     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 int got[10010];
     5 string prize[]={"Are you kidding?","Mystery Award","Minion","Chocolate","Checked"};
     6 
     7 bool isPrime(int n){
     8     for(int i=2,j=sqrt(n);i<=j;i++)
     9         if(n%i==0) return false;
    10     return true;
    11 }
    12 int main(){
    13     int n,k,x;
    14     scanf("%d",&n);
    15     for(int i=1;i<=n;i++){
    16         scanf("%d",&x);
    17         if(i==1) got[x]=1;
    18         else if(isPrime(i)) got[x]=2;
    19         else got[x]=3;
    20     }
    21     scanf("%d",&k);
    22     while(k--){
    23         scanf("%d",&x);
    24         printf("%04d: %s
    ",x,prize[got[x]].c_str());
    25         if(got[x]!=0) got[x]=4;
    26     }
    27     return 0;
    28 }
     
  • 相关阅读:
    闲谈:价值、服务、时间、用户体验、美、过度开发
    笔记:Sublime Text 3
    快速切换目录命令go
    miniPy for CentOS 5/6
    用Fabric实现小批量的自动化上线
    异步多线程C/S框架gko_pool
    Reboot分享第三期(已结束)
    Reboot分享第二期(已结束)
    Reboot分享第一期(已结束)
    iptables从入门到精通
  • 原文地址:https://www.cnblogs.com/Fresh--air/p/8571116.html
Copyright © 2011-2022 走看看