• 1059. C语言竞赛(20)


    1059. C语言竞赛(20)
    
    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?
    #include <iostream>
    #include <cstring>
    #include <string>
    #include <cstdlib>
    using namespace std;
    //#include <>
    #define MAX_SIZE 10010
    int stu[MAX_SIZE][2];
    int isPrime[2*MAX_SIZE];
    int main()
    {
        //初始化素数
        isPrime[0]=isPrime[1]=0;
        for(int i=2;i<2*MAX_SIZE;i++)
        {
            isPrime[i]=i;
        }
        for(int i=2;i<MAX_SIZE;i++)
        {
            if(isPrime[i]!=0)
            {
                for(int j = i+i;j<MAX_SIZE;j+=i)
                {
                    isPrime[j]=0;
                }
            }
        }
    
        memset(stu,0,sizeof(stu));
        int n;
        cin>>n;
        for(int i=1;i<=n;i++)
        {
            string input;
            cin>>input;
            int index = atoi(&input[0]);
            stu[index][0]=1;
            stu[index][1]=i;
        }
        cin>>n;
        for(int i=0;i<n;i++)
        {
            string order;
            cin>>order;
            int index = atoi(&order[0]);
            if(stu[index][0]==0)
            {
                cout<<order<<": "<<"Are you kidding?"<<endl;
            }
            else if(stu[index][0]==2)
            {
                cout<<order<<": "<<"Checked"<<endl;
            }
            else
            {
                stu[index][0]=2;
                if(stu[index][1]==1)
                {
                    cout<<order<<": "<<"Mystery Award"<<endl;
                }
                else if(isPrime[stu[index][1]]!=0)
                {
                    cout<<order<<": "<<"Minion"<<endl;
                }
                else
                {
                    cout<<order<<": "<<"Chocolate"<<endl;
                }
            }
        }
        return 0;
    }
  • 相关阅读:
    iOS tableViewCell自适应高度 第三发类库
    iOS 用 SDWebImage 清理图片缓存
    iOS JsonModel 的使用
    Objective-C语法之KVO使用
    iOS开发之 用第三方类库实现轮播图
    OS开发UI篇—使用UItableview完成一个简单的QQ好友列表
    iOS tableView 静态单元格的实现
    iOS沙盒目录结构解析
    ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
    AFNetworking 3.0.4 的使用
  • 原文地址:https://www.cnblogs.com/xiongmao-cpp/p/6377695.html
Copyright © 2020-2023  润新知