上一页 1 ··· 6 7 8 9 10 11 12 13 14 15 下一页
摘要: \(SG\) 函数 本文借鉴了自为风月马前卒的博客 基本定理: \(ICG\) 游戏: 游戏两人轮流,并且决策最佳 无法决策时游戏结束,并且在有限步内结束。 同一个状态不能多次表达,且没有平局出现。 游戏者在任意状态做出的决策和自己无关,只与当前状态有关。 满足以上条件就为 \(ICG\) 游戏,属 阅读全文
posted @ 2021-09-15 19:53 Evitagen 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 博弈论基础介绍: 巴什博弈: 例子: 一堆石子 \(n\) 个,任意取 \([1-m]\) 个,问先手必赢/输。 分析: 分类进行考虑: \([1,m]\) 个,先手必赢。 \(m+1\) 个,先手必输。 \([m+2,2m]\) 先手可以拿走几个,剩下 \(m+1\) 个,先手必胜。 我们发现,面 阅读全文
posted @ 2021-09-15 17:09 Evitagen 阅读(84) 评论(0) 推荐(0) 编辑
摘要: CF1517 B: Morning Jogging 我们只需要把前 \(m\) 小的数放在不同的行中,即可得到最小的疲惫总值。 有个小陷阱就是注意写的时候行和列的顺序。 #include<bits/stdc++.h> using namespace std; int T,n,m; const int 阅读全文
posted @ 2021-09-13 19:58 Evitagen 阅读(35) 评论(0) 推荐(0) 编辑
摘要: $KMP$专题 [POI2006]OKR-Periods of Words 解题思路: 求成为两倍前缀的前缀长度之和,那么我们就用 \(F(nxt)\) 数组的性质: 前缀 \(i\) 的长度为 \(F[i]\) 的前缀和后缀是相等的 说明,如果有 \(i\) 一个公共后缀长度为 \(j\) ,那么 阅读全文
posted @ 2021-09-10 19:48 Evitagen 阅读(32) 评论(0) 推荐(0) 编辑
摘要: P2561 [AHOI2002]黑白瓷砖 题目大意: 一共 \(\frac{n(n+1)}{2}\) 个六边形,组成一个等边形,六边形只有黑白,问有多少种不能通过旋转使其方案相同的染色方案数。 解题思路: 一看到黑白染色和计数,就是置换问题。 明显的 \(burnside\) 定理,一共有 \(6\ 阅读全文
posted @ 2021-09-09 19:27 Evitagen 阅读(45) 评论(0) 推荐(0) 编辑
摘要: CF1499 A:Domino on Windowsill 对于一个任意 \(2*2\) 的矩形,都是最多放两个。 定义 \(mini=min(k_1,k_2)\) 这时我们发现,无论 \(mini\) 是奇数还是偶数,化简后的 \(ans\) 都是 \(min(k_1,k_2)+(abs(k_1- 阅读全文
posted @ 2021-09-08 19:53 Evitagen 阅读(29) 评论(0) 推荐(1) 编辑
摘要: Polya定理 本篇文章并不是详细讲解,而是加深自己的记忆 群: 群的定义: 集合 \(G\) 和作用于集合 \(G\) 的二元计算 \(×\),满足以下 \(4\) 个性质就记为 \((G,×)\)。 封闭性:\(a,b∈G\), \(a × b∈G\) 结合律:$ (a\times b)\tim 阅读全文
posted @ 2021-09-08 18:02 Evitagen 阅读(305) 评论(0) 推荐(0) 编辑
摘要: CF1534 A: Colour the Flag 只有两种情况: 在奇数位置上: \((i+j)\%2==1\) 在偶数位置上: \((i+j)\%2==0\) 因此,我们需要判断当前第一次出现的字符在哪种位置上,记录之后,看剩下的字符是否匹配对应的位置,最后输出匹配情况即可。 注意考虑特殊情况。 阅读全文
posted @ 2021-09-07 17:05 Evitagen 阅读(33) 评论(0) 推荐(0) 编辑
摘要: CF1528 A: Parsa's Humongous Tree 关于这种树上的计算权值的题基本上都是树形 \(dp\). 我们先证明结论:一个数轴上有两个点,取另一个点 \(a\),点 \(a\) 在这两个点中间任意位置对距离和没有影响,但是在这两个点的左侧/右侧时,偏离的越远,距离之和越大。 这 阅读全文
posted @ 2021-09-06 16:34 Evitagen 阅读(29) 评论(0) 推荐(0) 编辑
摘要: CF1530 A: 序列中最大值,输出即可。 #include<bits/stdc++.h> using namespace std; int T; char s[15]; int main(){ cin>>T; while(T--){ scanf("%s",s+1); int len=strlen 阅读全文
posted @ 2021-09-02 16:46 Evitagen 阅读(39) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 15 下一页