摘要:
UVA 11859 看书看到博弈的部分了,然后就做一下这题。我们可以把因数个数看成石子,于是这题就变成了一个常规的Nim游戏了。 博弈好像挺好玩的,Bouton定理的证明也基本看懂,有空切一下博弈玩玩好像听不错的样子。代码如下: 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 const int N = 11111; 9 int pcnt[N];10 11 void PRE() {12 for (int i = 2; i < N; i++) {13 if (... 阅读全文
摘要:
UVA 11916 BSGS的一道简单题,不过中间卡了一下没有及时取模,其他这里的100000007是素数,所以不用加上拓展就能做了。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 9 using namespace std; 10 11 template T gcd(T a, T b) { return b ? a : gcd(b, a % b);} 12 typedef long long LL; 13 void gcd(LL a,... 阅读全文
摘要:
UVA 11754 一道中国剩余定理加上搜索的题目。分两种情况来考虑,当组合总数比较大的时候,就选择枚举的方式,组合总数的时候比较小时就选择搜索然后用中国剩余定理求出得数。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 8 using namespace std; 9 10 typedef long long LL; 11 12 const int N = 11; 13 const int UB = 11111; 14 int X[N], C, S; 15 ... 阅读全文