1059. C语言竞赛(20)

来源:互联网 发布:硅胶点胶机编程视频 编辑:程序博客网 时间:2024/05/19 06:47

水,一次过~
复习素数判断:
int is_prime(int x) {
for(int i = 2; i*i <= x; i++)
if(x % i == 0) return 0;
return 1;
}

// 2017/10/14 NCU // PAT-B 1060// scienceZ#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;int n, k;int arr[15000];int is_prime(int x) {  for(int i = 2; i*i <= x; i++)    if(x % i == 0) return 0;  return 1;} int main(){    cin >> n;    memset(arr, -1, sizeof(arr));    for (int i = 1; i<=n; i++){        int a;        cin >> a;        arr[a] = i;    }    cin >> k;    for(int i = 1; i<=k; i++){        int a;        cin >> a;           if(arr[a]>1 && is_prime(arr[a])){            printf("%04d: Minion\n", a);            arr[a] = 0;            continue;        }        switch(arr[a]){            case -1:                printf("%04d: Are you kidding?\n", a);                break;            case 0:                printf("%04d: Checked\n", a);                arr[a] = 0;                break;            case 1:                printf("%04d: Mystery Award\n", a);                arr[a] = 0;                break;            default:                printf("%04d: Chocolate\n", a);                arr[a] = 0;                break;                      }    }    return 0;}