首页 > 代码库 > 杭电hdu 4861 Couple doubi

杭电hdu 4861 Couple doubi

杭电 2014多校联训第一场   1001   Couple doubi   逗比夫妇

这标题我就不多说什么了。

题意:有K个球在桌上,每个球都有价值,第i个球的价值是1^i+2^i+...+(p-1)^i (mod p).其中p是一个素数,之后逗比男先选球,最后所有球总分高的获胜。如果逗比男获胜,那么输出“YES”否则输出“NO”。(逗比男和逗比女都采取最有策略)。

 

当然这也p是奇素数的一个重要公式。曾有题是这个公式求和。当然如果你知道就很简单了。如果不知道,就打表找规律吧。

根据这一重要的公式,我们可以轻松的写出代码。

#include <iostream>#include <stdio.h>typedef long long  LL;int main(int argc, const char * argv[]){    LL k,p;    while (~scanf("%I64d%I64d",&k,&p)) {        if (k/(p-1)%2) puts("YES");        else puts("NO");    }    return 0;}

 

——————————————————————————————————————————————————————————————————

向前走