1059 C語言競賽 (20 分)
阿新 • • 發佈:2018-11-24
#include <iostream> #include <cstdio> #include <cmath> #include <string> using namespace std; bool isPrime(int n){ int flag=1; for(int i=2;i<=(int)sqrt(n);i++){ if(n%i==0){ flag=0; break; } } return flag; } int main() { int n,k; scanf("%d",&n); int ary[n]; for(int i=0;i<n;i++){ scanf("%d",&ary[i]); } int status[n]={0}; scanf("%d",&k); while(k--){ int temp; int tempFlag=0; int nFlag; scanf("%d",&temp); for(int i=0;i<n;i++){ if(temp==ary[i]){ tempFlag=1; nFlag=i; break; } } if(tempFlag){ if(status[nFlag]==0){ status[nFlag]=1; if(nFlag==0){ printf("%04d: Mystery Award\n",temp); }else if((nFlag>=3&&isPrime(nFlag+1))||nFlag==2||nFlag==1){ printf("%04d: Minion\n",temp); }else{ printf("%04d: Chocolate\n",temp); } }else{ printf("%04d: Checked\n",temp); } }else{ printf("%04d: Are you kidding?\n",temp); } } return 0; }