摘要: 有点散乱, 将就着看吧. 首先是博弈论的基础, 即 N 和 P 两种状态: N 为必胜状态, P 为必败状态. 对于N, P两种状态, 则有 1. 没有任何合法操作的状态, P; 2. 可以移动到P局面的情况为N状态; 3. 可以移动到的所有状态均为N状态, 则当前情况为P状态. ... 阅读全文
posted @ 2016-11-16 10:27 Zeonfai 阅读(257) 评论(0) 推荐(0) 编辑
摘要: Description 小C在MC里有n个牧场,自西向东呈一字形排列(自西向东用1…n编号),于是他就烦恼了:为了控制这n个牧场,他需要在某些牧场上面建立控制站, 每个牧场上只能建立一个控制站,每个控制站控制的牧场是它所在的牧场一直到它西边第一个控制站的所有牧场 (它西边第一个控制... 阅读全文
posted @ 2016-11-15 20:54 Zeonfai 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 【问题描述】给定两个整数N和M,以及两个由小写字母组成的字符串S和T,我们按以下要求生成两个字符串A和B:1、 字符串A和B的长度相等;2、 A由S重复N次产生;3、 B是由T重复M次产生。如果A中的第i个字符与B中的第i个字符相同,则视为匹配。给定N、M、S、T,请编写一个程序求... 阅读全文
posted @ 2016-11-15 18:33 Zeonfai 阅读(249) 评论(0) 推荐(0) 编辑
摘要: Description 积木大赛(block.pas/c/cpp)【问题描述】春春幼儿园举办了一年一度的“积木大赛”。在2013年NOIP大赛中,平平同学己经搭建了宽度为n的大厦,其中第i块高度为hi。今年比赛的内容是对其NOIP2013搭建大厦进行扩建,使用的材料也都是体积为1正... 阅读全文
posted @ 2016-11-15 18:32 Zeonfai 阅读(338) 评论(0) 推荐(0) 编辑
摘要: Description 给出一个数列,求出这个序列的最长下降子序列的长度及方案数,子序列中的权值完全相同视为同一个序列 Input 第一行一个整数n,接下来一行n个整数表示序列的权值Output 一行两个整数分别表示最长的长度及方案数Sample Input 样例输入1:12 68... 阅读全文
posted @ 2016-11-15 13:48 Zeonfai 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 稍作尝试可得三类情况, 分类讨论: 1. 根本就没有循环/循环节大于phi(n), 当且仅当a, n不互质 2. 循环节等于phi(n) 3. 循环节为phi(n)的因数2, 3类情况需要通过运算来判别. 通过快速幂来加速运算(又是二进制拆分思想…) 代码不是我的.#includ... 阅读全文
posted @ 2016-11-14 16:31 Zeonfai 阅读(224) 评论(0) 推荐(0) 编辑
摘要: Description 小R有n部手机,为了便于管理,他对一些手机设置了“呼叫转移”的功能。具体来说,第 i(1≤i≤n) 部手机有个参数 ai(0≤ai≤n,ai≠i) 。若 ai≠0 则表示第 i 部手机接到电话时会将电话无条件转移给第 ai 部手机(此时如果 aai≠0, 会... 阅读全文
posted @ 2016-11-13 21:33 Zeonfai 阅读(218) 评论(0) 推荐(0) 编辑
摘要: Description 你有n种硬币,每种硬币有c个每个价值a,不同种硬币价值可能相同, 问你用这些硬币可以凑出1到m中多少种不同价值 Input 第一行一个整数t表示数据组数,每组数据第一行两个整数n,m, 接下来n行每行两个整数表示这种硬币的a和cOutput 对于每组数据输出... 阅读全文
posted @ 2016-11-13 21:30 Zeonfai 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 使用头文件. Linux下的iostream不包含freopen检查文件读入输出关闭同步以提高性能多个输出使用printf检查是否爆int 阅读全文
posted @ 2016-11-13 15:15 Zeonfai 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 排列组合思想. 先跑一遍最短路, 再从1节点开始搜索, 假如搜到一个点的路径长度等于最短路, 则记录到达该点的路径数 + 1. 最后遍历一遍, ans *= rec[i] 输出答案即可. 关键在于想到这个排列组合的思想.#include#include#include#define... 阅读全文
posted @ 2016-11-13 15:12 Zeonfai 阅读(123) 评论(0) 推荐(0) 编辑