首页 > 代码库 > 2014多校第一场A题 || HDU 4861 Couple doubi

2014多校第一场A题 || HDU 4861 Couple doubi

题目链接

题意 : 有K个球,给你一个数P,可以求出K个值,(i=1,2,...,k) : 1^i+2^i+...+(p-1)^i (mod p).然后女朋友先取,再xp取,都希望赢,如果女朋友能赢输出YES,否则输出NO

思路 :这个题,在纸上算算差不多就出来结果了,因为要赢,所以一开始必定拿大的,根据规律可以发现最后的那个取余结果不是0就是某个数,所以就看那个数有奇数个还是偶数个即可。

官方题解:

 1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4  5 using namespace std ; 6  7 int main() 8 { 9     int k,p ;10     while(~scanf("%d %d",&k,&p))11     {12         if((k/(p-1))%2) puts("YES") ;13         else puts("NO" ) ;14     }15     return 0 ;16 }
View Code