Source:

PAT A1116 Come on! Let's C (20 分)

Description:

"Let's C" is a popular and fun programming contest hosted by the College of Computer Science and Technology, Zhejiang University. Since the idea of the contest is for fun, the award rules are funny as the following:

  • 0、 The Champion will receive a "Mystery Award" (such as a BIG collection of students' research papers...).
  • 1、 Those who ranked as a prime number will receive the best award -- the Minions (小黄人)!
  • 2、 Everyone else will receive chocolates.

Given the final ranklist and a sequence of contestant ID's, you are supposed to tell the corresponding awards.

Input Specification:

Each input file contains one test case. For each case, the first line gives a positive integer N (≤), the total number of contestants. Then N lines of the ranklist follow, each in order gives a contestant's ID (a 4-digit number). After the ranklist, there is a positive integer K followed by K query ID's.

Output Specification:

For each query, print in a line ID: award where the award is Mystery Award, or Minion, or Chocolate. If the ID is not in the ranklist, print Are you kidding? instead. If the ID has been checked before, print ID: Checked.

Sample Input:

  1. 6
  2. 1111
  3. 6666
  4. 8888
  5. 1234
  6. 5555
  7. 0001
  8. 6
  9. 8888
  10. 0001
  11. 1111
  12. 2222
  13. 8888
  14. 2222

Sample Output:

  1. 8888: Minion
  2. 0001: Chocolate
  3. 1111: Mystery Award
  4. 2222: Are you kidding?
  5. 8888: Checked
  6. 2222: Are you kidding?

Keys:

  • 素数(Prime)

Attention:

  • 对于较大规模的数据,采用打表的方法可以大大的优化时间,平时应该养成习惯已备不时之需;

Code:

  1. /*
  2. Data: 2019-06-11 20:19:43
  3. Problem: PAT_A1116#Come on! Let's C
  4. AC: 15:40
  5.  
  6. 题目大意:
  7. 按排名给出N名同学的ID,
  8. 第一名,Mystery Award
  9. 素数名次,Minion
  10. 其他名次,Chocolate
  11. 询问过了,Checked
  12. 占便宜者,Are you kidding?
  13. */
  14.  
  15. #include<cstdio>
  16. #include<string>
  17. #include<vector>
  18. #include<iostream>
  19. using namespace std;
  20. const int M=1e5;
  21. int isPrime[M],n,name;
  22. string id[M];
  23. vector<int> prime;
  24.  
  25. void Euler()
  26. {
  27. fill(isPrime,isPrime+n+,);
  28. isPrime[]=;isPrime[]=;
  29. for(int i=; i<=n; i++){
  30. if(isPrime[i])
  31. prime.push_back(i);
  32. for(int j=; j<prime.size(); j++){
  33. if(i*prime[j]>n)
  34. break;
  35. isPrime[i*prime[j]]=;
  36. if(i%prime[j]==)
  37. break;
  38. }
  39. }
  40. }
  41.  
  42. int main()
  43. {
  44. #ifdef ONLINE_JUDGE
  45. #else
  46. freopen("Test.txt", "r", stdin);
  47. #endif
  48.  
  49. scanf("%d", &n);
  50. Euler();
  51. for(int i=; i<=n; i++)
  52. {
  53. scanf("%d", &name);
  54. if(i == )
  55. id[name] = "Mystery Award";
  56. else if(isPrime[i])
  57. id[name] = "Minion";
  58. else
  59. id[name] = "Chocolate";
  60. }
  61. scanf("%d", &n);
  62. for(int i=; i<n; i++)
  63. {
  64. scanf("%d", &name);
  65. printf("%04d: ", name);
  66. if(id[name].size() != ){
  67. cout << id[name] << endl;
  68. id[name] = "Checked";
  69. }
  70. else
  71. cout << "Are you kidding?" << endl;
  72. }
  73.  
  74. return ;
  75. }

PAT_A1116#Come on! Let's C的更多相关文章

随机推荐

  1. kendo grid create

    这种自定义的create中的函数,这个data的行为是在发送到后端之前执行的 //{ // url: "/admgr/AdUserAuthorityAdd", // dataTyp ...

  2. BZOJ——T 1801: [Ahoi2009]chess 中国象棋

    http://www.lydsy.com/JudgeOnline/problem.php?id=1801 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit:  ...

  3. Spring MVC-处理程序映射(Handler Mapping)-简单的Url处理程序映射(Simple Url Handler Mapping)示例(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_simpleurlhandlermapping.htm 说明:示例基于Spring ...

  4. HDU 5347(MZL&#39;s chemistry-打表)

    MZL's chemistry Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. CocoaPods建立私有仓库

    项目管理:CocoaPods建立私有仓库 2015-05-08 10:22 编辑: lansekuangtu 分类:iOS开发 来源:agdsdl 0 6367 CocoaPods项目管理私有仓库 招 ...

  6. DotNetBar.Bar作为容器使用的方法及Text更新原理

    DotNetBar.Bar作为容器使用的方法及Text更新原理                          老帅    一.容器用法   控件DevComponents.DotNetBar.Ba ...

  7. android屏幕适配之精准适配

    (1554068430@qq.com)(android精准适配工具)近期这段时间项目要做适配,在网上方便的方法.后来依据http://blog.csdn.net/jdsjlzx/article/det ...

  8. HDU - 3622 Bomb Game(二分+2-SAT)

    题目大意:玩一个放炸弹游戏,有N次放炸弹的机会,每次放炸弹时,你都有两个位置能够选择.问怎样放炸弹,能使爆炸的炸弹的半径的最小值最大(炸弹爆炸半径能够控制,可是爆炸形成的圈不能有重叠部分) 解题思路: ...

  9. Android View的onTouch和onClick和onLongClick事件

    这三个事件的调用顺序是: onTouch->onLongClick->onClick 先看这三个事件的处理函数: public boolean onTouch(View v, Motion ...

  10. Codeforces--106C--Buns(背包)

    Buns Time Limit: 2000MS   Memory Limit: 262144KB   64bit IO Format: %I64d & %I64u Submit Status ...