02 2019 档案

摘要:做法:模拟 萌区间也就是这个区间里的数是一段连续的数 做法的话是先找出题目x,y的位置,记为l,r,然后找出l,r内的最大最小值,又因为萌区间要求数是连续的,就从这段连续数最小的开始到最大的,确定缩放区间的左右端点,但现在这个缩放区间可能还包含有别的区间,我们就开始拓展拓展答案区间 主要是要注意两点 阅读全文
posted @ 2019-02-28 13:07 清酒令 阅读(171) 评论(0) 推荐(0)
摘要:题目链接 分析:这题用到了欧拉函数, 欧拉函数,用φ(n)表示 欧拉函数是求小于等于n的数中与n互质的数的数目 详细可以看看这篇博文https://www.cnblogs.com/linyujun/p/5194170.html 注意:这种指数形式取模的话不能在指数上直接取模,但可以给底数取模 阅读全文
posted @ 2019-02-27 20:39 清酒令 阅读(170) 评论(0) 推荐(0)
摘要:题目链接 分析:有大佬说可以用线性基写,可惜我不会,这是用DP写的 题目明确说明可到达的位置只与能值有关,和下标无关,我们就可以排个序,这样每个数可以转移的区间就是它的所有后缀 我们可以用dp[i][j]表示到达第i个位置,当前耐久度为j是否可行,那就可以根据走或不走两种情况来安排状态转移 也就是说 阅读全文
posted @ 2019-02-27 10:41 清酒令 阅读(376) 评论(0) 推荐(0)
摘要:题目链接 题意:总共有3x3盏灯,每次切换一个灯还会同时改变上下左右的灯,问想把灯全部打开最少需要操作多少次 输入:一个3X3的矩阵 分析:操作顺序对题目是不影响的,另外,操作奇数次等价于1次,偶数次等价于2次,也就是说最大操作次数是9次 分析题目我们可以发现题目数据规模并不大,可以暴力枚举,并且灯 阅读全文
posted @ 2019-02-26 09:59 清酒令 阅读(451) 评论(0) 推荐(0)
摘要:题目链接 题意,给一个字符串,求子序列“cwbc”出现的次数 分析: dp,滚动数组 令 f[i][j],(j = 1,2,3,4) 表示前 i 个字符中,匹配了字符串”cwbc” 的前多少位,那么有转移方程: f[i][1] = (f[i−1][1] + (s[i] ==′ c′)) % Mod 阅读全文
posted @ 2019-02-25 08:36 清酒令 阅读(1448) 评论(0) 推荐(1)
摘要:题目链接 有一个棋子放在一颗有根树的根上。你和算卦先生轮流把这个棋子向所在点的其中一个儿子移动(只能移动到儿子)。不能再移动就算失败(即棋子所在节点没有儿子)。 算卦先生来问你,如果你先手,你是否有必胜策略 分析:用DFS,从根到尾一点点来,因为会沿着一条路径走到黑,每个点只会被访问到一次,大致是O 阅读全文
posted @ 2019-02-23 22:08 清酒令 阅读(228) 评论(0) 推荐(0)
摘要:题意:求区间的质数的个数 按照网上来说是个模板题,按照论文积分来做的,复杂度O(n^(2/3)) 看懂是不可能看懂的,就给记下来吧。。。 阅读全文
posted @ 2019-02-23 20:02 清酒令 阅读(262) 评论(0) 推荐(0)
摘要:题目链接 这道题属于网络流的模板题,不是很了解网络流的可以看看这篇介绍 http://www.cnblogs.com/SYCstudio/p/7260613.html 首先有一个定理 最大流最小割定理:最大流最小割定理是网络流理论的重要定理。是指在一个网络流中,能够从源点到达汇点的最大流量等于如果从 阅读全文
posted @ 2019-02-22 10:52 清酒令 阅读(333) 评论(0) 推荐(0)
摘要:The designers have come up with a new simple game called “Rake It In”. Two players, Alice and Bob, initially select an integer k and initialize a scor 阅读全文
posted @ 2019-02-20 15:58 清酒令 阅读(221) 评论(0) 推荐(0)
摘要:题目链接 这题写的一把辛酸泪,第一次用getchar()读入,再加上很少用scanf()读入字符,被输入输出缓冲安排的明明白白,最后放弃治疗,用cin,还是死活没有输出,最后才发现是因为for循环多加了一步,白被坑了有一天。 算法分析:首先把每个男士加入队列,让每一个没配对的男士去向女士请求配对,如 阅读全文
posted @ 2019-02-20 10:17 清酒令 阅读(245) 评论(0) 推荐(0)
摘要:题目链接 题目大意: 给定一个长度为n的序列,要求能够执行m次下列操作: 1.查询区间[l,r]的和 2.将区间[l,r]的每一个数%=mod 3.修改第x个数为y 操作1,3都是线段树的基本操作,线段树详细知识可以看看这篇大牛的文章 https://www.cnblogs.com/TheRoadT 阅读全文
posted @ 2019-02-18 19:54 清酒令 阅读(280) 评论(0) 推荐(0)
摘要:题目链接 题目因为要根据上一次的输出结果来判断这次的输入,也就是要求我们强制在线,不能够把输入全部储存后处理 如果不要求强制在线,我们可以先把所以输入储存起来,从最后开始处理,把删边改成加边,如果在加边前不连通,加边后连通,也就等价意味着删边后会不连通,再把输出储存起来,最后从头到尾输出 既然强制在 阅读全文
posted @ 2019-02-17 11:34 清酒令 阅读(317) 评论(0) 推荐(0)
摘要:题目链接 做的第一道数位DP题,听说是最基础的模板题,但还是花了好长时间才写出来。。。。。 想深入了解下数位DP的请点这里 先设dp数组dp[i][j][k]表示数位是i,以j开头的数k出现的次数 有 数位dp的题一般都会用到前缀数组,题目要求我们求b-a这个区间里各个数码出现的次数,我们可以分别求 阅读全文
posted @ 2019-02-13 14:07 清酒令 阅读(170) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/86/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 时间限制:C/C++ 阅读全文
posted @ 2019-02-11 14:34 清酒令 阅读(769) 评论(0) 推荐(0)
摘要:题目链接 分析:一个裸的NIM博弈 对于一个Nim游戏的局面(a1,a2,...,an),它是P-position(即当前局面先手必败)当且仅当a1^a2^...^an=0,其中^表示异或(xor)运算。 一个常识:异或自己两次,相当于没有异或,即异或的消去律,可用这种方式避免T 阅读全文
posted @ 2019-02-10 21:10 清酒令 阅读(175) 评论(0) 推荐(0)
摘要:题目链接 分析:这个题本质上可以看成是一个括号匹配题,因为当出现00和11的时候,毫无疑问是前一天看题,后一天写题,这样可以得到最大的得分10 将全部00和11删掉后,就是交替出现的01串了 代码如下: 阅读全文
posted @ 2019-02-03 23:35 清酒令 阅读(248) 评论(0) 推荐(0)
摘要:题目请点这里 分析:这是一道BFS的模板题,构造一个队列,将每个满足条件的(不超过边界,不超过左右移动次数的限制)位置推入队列,如果不是障碍物且没到达过,就将可到达位置的个数加1 此外,注意这里的输入,输入迷宫的时候是直接输字符串,可以用cin,也可以用getchar()函数 getchar()函数 阅读全文
posted @ 2019-02-03 19:59 清酒令 阅读(207) 评论(0) 推荐(0)
摘要:题目链接点这里 这个题输入类型是第一次见,并没有把n和m的具体范围给你,但是给了n*m的范围,武断的设为1e6*1e6的二维数组铁铁WA,就将二维数组转换为一维数组 题目类型属于二维数组前缀和,有um[i][j]=sum[i−1][j]+sum[i][j−1]−sum[i−1][j−1]+a[i][ 阅读全文
posted @ 2019-02-02 23:20 清酒令 阅读(212) 评论(0) 推荐(0)