先写了一个暴力找规律,正解是用数论里的一个结论,当然我也布吉岛><
#include <iostream> #include<cmath> #include<stdlib.h> #include<stdio.h> using namespace std; long long k; long long p; long long fun(int idx,int p0) { long long sum=0; for(int i=1;i<p0;i++) { sum+=pow(i,idx); } return sum%p0; } int main() { // freopen("input.txt","r",stdin); while(scanf("%I64d %I64d",&k,&p)!=EOF) { long long tmp=k/(p-1); if(tmp%2==1) printf("YES\n"); else printf("NO\n"); // for(int i=1;i<=k;i++) // { // cout<<fun(i,p)<<" "; // } // cout<<endl; } return 0; }