NOIP2018提高组模拟题(五)】的更多相关文章

字符串(string) Description 小林与亮亮正在做一个游戏.小林随意地写出一个字符串,字符串只由大写 字母组成,然后指定一个非负整数 m,亮亮可以进行至多 m 次操作,每次操作 为交换相邻两个字符.亮亮的目标是使得操作后的字符串出现最长相同的字符的 长度最大.你能帮亮亮计算一下这个最大长度是多少吗? Input 第一行一个字符串 S. 第二行一个整数 m. Output 只有一个整数,表示所求的最大长度. 表示刚开始想了一个小时的\(DP\) 然后还出样例了, 要不是手出了一组样例…
1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路.正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条.亮亮拿起纸条的一端,只见上面写着打开机关的方法:“打开机关需要念动符咒,咒语是一串长为 L 的由 0 和 1 组成的字符串.在这张长纸条上列了 n 个长为 L 的字符串,正确的咒语即是在纷繁的 2^L 种字符串中,与这些纸条上的字符串相异度之和最小,并且在满足这一条件下, 0 的个数最多的字符串.两个字符串…
能量(energy) Description ​ 有一块能量田,它的形状是 n*m的矩形,每一个格子上都有一个能量值 a[x][y] (可正可负).一块矩形田的能量定义为它的每个格子的能量值之和. ​ 现在,亮亮需要选择一块正方形的能量田,用它的能量来为自己的魔法棒充 值.他当然希望所选择的能量田所含的能量最大,请你帮助他求出这个最大值. ​ 数据保证能量田中至少有一个格子的能量值非负. Input 一行两个整数 n 和 m. 接下来 n 行,每行 m 个整数. Output 输出只有一个整数,…
购物(shop) Description 小林来到商店中进行购物.商店里一共有 n 件物品,第 i 件物品的价格为 a[i] 元.小林总共需要购买 m 件物品,他希望他所花费的钱最少,请你计算出最小 花费. 由于输入的数据数量过大,我们采用一种加密的方式进行输入.给出两个密 钥 x 和 y.则 a[1] = x, a[i] = (y*a[i-1] + x) % 10^9. Input 一行两个整数 n 和 m. 第二行共两个整数 x 和 y,表示密钥. Output 输出只有一个整数,表示最小花…
大水题 1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路.正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条. 亮亮拿起纸条的一端,只见上面写着打开机关的方法:"打开机关需要念动符咒,咒语是一串长为 L 的由 0 和 1 组成的字符串.在这张长纸条上列了 n 个长为 L 的字符串,正确的咒语即是在纷繁的 2^L 种字符串中,与这些纸条上的字符串相异度之和最小,并且在满足这一条件下, 0 的个数最多的字符串.…
咒语(curse) Description 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路. 正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条. 亮亮拿起纸条的一端,只见上面写着打开机关的方法:"打开机关需要念动 符咒,咒语是一串长为 L 的由 0 和 1 组成的字符串.在这张长纸条上列了 n 个 长为 L 的字符串,正确的咒语即是在纷繁的 2^L 种字符串中,与这些纸条上的 字符串相异度之和最小,并且在满足这一条件下,0 的个数最多的字符串.两个 字符串的相异…
书信(letter) Description 有 n 个小朋友, 编号为 1 到 n, 他们每人写了一封信, 放到了一个信箱里, 接下来每个人从中抽取一封书信. 显然, 这样一共有 n!种拿到书信的情况. 现在亮亮规定, 对任意的 1<=x,y<=n, 如果 x 号小朋友拿到 u 号小朋友写的 书信, y 号小朋友拿到 v 号小朋友写的书信, 那么(x+y)号小朋友必须拿到(u+v) 号小朋友写的书信(这里的加法若和超过了 n, 那么就减去 n) . 小林想知道, 总共有多少种拿到书信的情况呢…
题目链接: http://172.16.0.132/senior/#main/show/5852 题目: 题目大意: 多组询问,每次询问树上两条链是否相交 题解: 两条链相交并且仅当某一条链的两个端点的LCA在另一个端点上 对于每次询问,我们分别处理出两条链端点的LCA,通过倍增判断是否存在一条链的LCA在另一条链上 #include<algorithm> #include<cstring> #include<cstdio> #include<iostream&g…
题目链接: http://172.16.0.132/senior/#main/show/5875 题目: 题解: 注意这题只能经过开放的港口 我们考虑用vector存下每个点不能到的点,并把并让vector里面的元素升序排序,这样我们就可以二分查找一个点是否与另外一个点相连 接下来我们对于每一个开放的港口bfs,每次bfs都把属于这个连通块的港口去掉 考虑开两个队列来bfs,队列1存储的是当前连通块里还没有拓展的点,队列2里存储的是还剩下的点,看看代码就可以理解了 #include<algori…
http://www.hzxjhs.com:83/contest/493/problem/3 [题目大意] 给定一个有n(n<=500000)个点,m(1<=500000)条边的无向图.给Q(1<=500000)个询问ui和vi,问ui和vi之间是否存在一条不经过重复点的路径,使得经过的点数为偶数. [题目解析] #include<cstdio> #include<algorithm> #include<cstring> #include<cct…