#include <bits/stdc++.h> using namespace std; int a[510],b[510]; int main(void){ int n; cin>>n; for(int i=1;i<=n;i++){ int x; cin>>x; for(int j=2;j*j<=x;j++){ if(x%j==0){ a[j]++; while(x%j==0 &&x){ x/=j; } } } } for(int i=1;i<=n;i++){ int x; cin>>x; for(int j=2;j*j<=x;j++){ if(x%j==0){ b[j]++; while(x%j==0 &&x){ x/=j; } } } } for(int i=1;i<=500;i++){ int x,y; x=a[i]; y=n-b[i]; if(x>y){ cout<<"Alice"; return 0; } } cout<<"Bob"; return 0; }
HK 样例
3
2 12 3
1 1 6
水代码输出Bob,实际肯定是Alice赢,因为6是与上面3个约数都不为1.
全部评论
(0) 回帖