ZOJ 3758 Singles' Day

来源:互联网 发布:淘宝卖兽药 编辑:程序博客网 时间:2024/04/30 05:20

所以这道题,嗯,太相信模板了,FOR循环里面用了INT ,难怪超时。LONG LONG不确定够不够大,不够就再加,变成UNSIGNED LONG LONG.

#include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <cstring>#include <algorithm>#include <string>#include <set>#include <functional>#include <numeric>#include <sstream>#include <stack>#include <map>#include <queue>using namespace std;typedef unsigned long long ll;ll make_pow(ll x,ll n){ll res =1;while(n>0){if(n&1)res = res*x;x = x*x;n>>=1;}return res;}bool isprime(ll n){for(ll i=2;i*i<=n;i++)if(n%i==0)return false;return n!=1;}int main(){ll n,b;while(scanf("%lld%lld",&b,&n)==2){if(isprime((make_pow(b,n)-1)/(b-1)))printf("YES\n");elseprintf("NO\n");}return 0;}


0 0
原创粉丝点击