![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
题解
文章平均质量分 82
Gank_Wind
I AK IOI
展开
-
[CEOI2018]Global warming
[CEOI2018]Global warmingLinkETHANK大佬已经写过题解,但是对于没有想过来的friends可能会有点迷糊,故以此帖加以补充。通过读题可知我们需要修改的是一个连续区间 [$ l ,,, r ],由于增加值相等,所以区间内的元素相对大小不改变,也就是说,这次修改只会对[] ,由于增加值相等,所以区间内的元素相对大小不改变,也就是说,这次修改只会对 [],由于增加值相等,所以区间内的元素相对大小不改变,也就是说,这次修改只会对[ r+1 ,,, n $] 造成影响。但修改的范原创 2021-06-13 23:12:40 · 216 阅读 · 0 评论 -
「高手训练」手机游戏(monster)
前言坑点还是蛮多的,不过既然自己做出来了就总结一下吧!题目描述明明的手机上有这样一个游戏,一排nnn个怪物,每个怪物的血量是mim_{i}mi 。现在明明可以射出 kkk个伤害均为ppp的火球,当某个火球射到第iii个怪物,除了这个怪物会掉血以外,它左边的第 j个怪物 (jjj ≤\leq≤ iii),也会遭到max(0,p−(i−j)2)max(0,p-(i-j)^2)max(0,p−(i−j)2)的溅射伤害。当某个怪物的血量为负的时候,它就死了,但它的尸体依然存在,即其他怪物不会因为它死原创 2021-05-12 00:18:23 · 259 阅读 · 0 评论 -
[THUPC2017] 玩游戏 解题报告
前言没有在题解区发现类似做法Link大部分题解都是从大到小枚举,但是从小到大也有一种做法证明,对于任意xxxϵ\epsilonϵ{0,1,2,…,∑i=1ni\sum_{i=1}^ni∑i=1ni},都有∑i=1ki\sum_{i=1}^ki∑i=1ki - rrr=xxx其中,k≤\leq≤n , rrrϵ\epsilonϵ{0,1,2,…,∑i=1ki\sum_{i=1}^ki∑i=1ki}设bbb满足b+1b+1b+1≤\leq≤kkk,且∑i=1bi\sum_{i=1}^b原创 2021-04-21 23:17:35 · 164 阅读 · 0 评论 -
解题报告 一姬的三倍满自动机
题目描述一姬想要设计一种机器,使自己不断地和牌上分,但是她觉得麻将是可以让四个人都得到快乐的,至少她不希望雀魂玩家减一这种事情的发生。因此她不希望有人被飞,所以她想要你设计一款三倍满自动机,使得自己在闲家和牌收益最大又不会让人被飞。由于她只和三倍满,所以做出决策以及提高打点是十分重要的,在自动机中,这需要解决以下问题实现:给定n个非负整数 a1a_1a1,a2a_2a2,a3a_3a3,a4a_4a4… ,给定一个非负整数x,求a[i]a[i]a[i]⨁\bigoplus⨁a[j]a[j]a原创 2021-04-17 17:01:41 · 125 阅读 · 0 评论 -
CF909C 解题报告
思路观察题目,我们可以发现当前这一层的位置选择只与上一层的位置和代码种类有关,那么我们可以设dp[i][j]表示第i层间隔为j个时的方案总数,同时用一个now来记录到第i层f的数量,表示最多能够间隔的距离那么最终答案就是∑i=1now\sum_{i=1}^{now}∑i=1nowdp[n][i]考虑两种状态1.第i-1层为f此时当前位置只能由dp[i-1][j-1]得来,...原创 2020-12-29 12:58:03 · 131 阅读 · 0 评论 -
随堂思维训练 题解
总所周知思维题=DPProblem 1雇佣计划 题目描述一位管理项目的经理想要确定每个月需要的工人,他当然知道每月所需的最少工人数.当他雇佣或解雇一个工人,会有一些额外支出.一旦一个工人被雇佣,即使他不工作,他也将得到工资.这位经理知道雇佣一个工人的费用,解雇一个工人的费用和一个工人的工资.现他在考虑一个问题:为了把项目的费用工致在最低,他将每月雇佣或解雇多少个工人?输入格式第1行:1个整数n(n<=12),表示月数。第2行:3个用空格分开的整数h, s, f,分别表示雇佣一个工原创 2020-11-14 22:21:09 · 336 阅读 · 0 评论 -
国庆测试-one Problems Explanation
前言差点一套把我直接送走60+0+0+40=100…Problem 1 数列问题题目描述小明和小红在一起玩游戏,小明觉得现在玩的游戏太无聊了,便给小红出了一道数列问题。数列问题的题目如下:一开始,小明给小红一个只含有数字1的数列,接下来,小红可以对这个数列进行以下操作中的一种操作:· 对序列中已有的一个元素加1.· 复制一个序列中已有的元素到序列的末尾.比如:一开始序列中只有一个元素[1]我们可以选择这个序列中的第一个元素进行第二种操作,即复制操作,这样,这个序列就变成了[1,1]然原创 2020-10-07 16:57:41 · 211 阅读 · 0 评论 -
膨胀的tyx 题解
前言个人感觉比较有意思的一道题,思路还是挺巧妙的,到了lydd那里就变成中规中矩的题了题目描述由于tyx抱过了这么多大腿,他变得越来越棒棒了,一般的迷宫根本拦不住他。为了治一治他,你决定为他单独定制一款无限迷宫。所谓无限迷宫是指,由一个 的迷宫单元经过无限平铺得到的迷宫,即将无数份迷宫单元平铺在一个二维平面上。定制好以后,你将tyx扔到了迷宫里,不妨假定tyx落在了起点处。出于对无限迷宫的恐惧,tyx想要尽可能逃离这里。那么问题来了,tyx能不能逃到距离起点无限远的地方去呢?输入格式第一行两原创 2020-09-20 13:48:20 · 595 阅读 · 1 评论 -
龙虎斗 题解
前言想到去香港玩的时候在机场看过一部《龙虎斗》的电影233333传送门分析题意,其实就是一个模拟加贪心,因为要两个阵营的气势差最小,所以肯定把我们的工兵放在气势更小的那方阵营更优,把两部分分开枚举,如果气势差比sum小,就更新sum和ans,找出最小的位置就行了于是。。。为什么?明明思路没有问题呀?那是由于忽略了数据范围,在计算乘积时用int会爆掉,所以要用longlonglong longlonglong存可即使这样也只有48分?在计算气势和枚举位置时,其实都可以把分开的两个部分的循环写原创 2020-08-13 22:05:03 · 382 阅读 · 3 评论 -
花生采摘 洛谷P1986题解
前言刚开始还以为是搜索来着23333传送门看似复杂,其实只需要记录下摘每个花生需要的时间,再根据题意从大的花生开始找就行了要找下一个花生的位置,用曼哈顿距离解决,即两个点的横坐标之差加上纵坐标之差(都要用abs),注意,采摘花生也需要1时间单位#include<cstdio>#include<iostream>#include<cmath>#include<algorithm>using namespace std;int n,m,shij原创 2020-08-08 20:04:10 · 215 阅读 · 0 评论 -
传球游戏 题解
前言emmmmmmmm要说什么好呢传送门发现很多题解给出的过程太复杂了,因为一个人只能从左边或右边得到球,所以其实你只用理解为每个人得到球的方案数是他左边的人的方案数+右边的人的方案数就行了鸭~设一个二位数组dp[i[]j]来表示第i次传球时第j个人可能得到球的方案数,不难得出状态转移方程为dp[i][j]=dp[i−1][j+1]+dp[i−1][j−1]dp[i][j]=dp[i-1][j+1]+dp[i-1][j-1]dp[i][j]=dp[i−1][j+1]+dp[i−1][j−1]但原创 2020-08-07 21:13:44 · 344 阅读 · 0 评论 -
洛谷P5057简单题 题解
前言这是我A的第一道省选题!可它的难度是普及/提高-传送门题目大意:给定一个初始为0的序列,可以让某一段区间的数字反转,也可以询问某个点的值学过树状数组的同学可能看出来了,这是一道树状数组区间修改,单点查询的变式,还没有学过的同学可以看看这篇博客树状数组路人:你这不是骗阅读量吗我:略略略略略略略略略略但是要怎么反转一个数的值呢?用异或(这个符号:^)异或的作用是当两个数值不同时为1,否则都为0如:0^0=00^1=11^0=11^1=0不难看出,当0异或1时为1,1异或1时为0原创 2020-08-07 20:40:52 · 241 阅读 · 1 评论 -
NOIP模拟赛2
前言花了1个多小时搞T1,因为没有写好判断导致错误,然后又转去做T3,本来想出了两重循环但是脑子秀逗了准备手推打表代码。。。超级悲惨爆零33名滚粗满分:100+100+100+100=400得分:0+0+0+0=0T1A. 字符串的展开(expand.cpp)题目描述在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母或数字串替代其中的减号,即,将上面两个子串分原创 2020-07-25 20:37:24 · 434 阅读 · 0 评论 -
HASH表
前言字符串什么的最玄学了什么是HASH表当我们要查询几个数组里的元素时,往往用到朴素算法O(n)O(n)O(n)会超时,而二分虽然时间复杂度为O(logn)O(log_n)O(logn)又只能在数组有序的情况下使用,所以在这种时候,我们就需要用到hash表Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相原创 2020-07-23 21:48:16 · 253 阅读 · 0 评论 -
NOIP模拟赛1
前言感觉并不难,但是时间有点短,细节注意的不够,加上出了点玄学错误,25名滚粗总分:100+100+100+100=400得分:100+10+0+10=120Count一道map板子题,忘了map里面是红黑树自动排序,最后剩了20分钟因为担心没排序还去写了两个结构体结果还没写完。。。题目#include<cstdio>#include<map>#include<iostream>#include<algorithm>using names原创 2020-07-22 19:30:36 · 179 阅读 · 0 评论 -
分离与合体
题目描述经过在机房里数日的切磋,LYD 从杜神牛那里学会了分离与合体,出关前,杜神牛给了他一个测试……杜神牛造了 个区域,他们紧邻着排成一行,编号 。在每个区域里都放着一把 OI 界的金钥匙,每一把都有一定的价值,LYD 当然想得到他们了。然而杜神牛规定 LYD 不能一下子把他们全部拿走,而是每次只可以拿一把。为了尽快得到所有金钥匙,LYD 自然就用上了刚学的分离与合体特技。一开始 LYD 可以选择 中的任何一个区域进入,我们不妨把这个区域记为 。进入后 LYD 会在 区域发生分离,从而分离成两原创 2020-07-19 20:39:45 · 246 阅读 · 0 评论 -
最多能完成排序的块题解
前言没有题目数组arr是[0, 1, …, n - 1]的一种排列,我们将这个数组分割成几个“块”,并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。我们最多能将数组分成多少块?输入格式共两行。第一行为正整数n,代表数组有n个数。第二行为n个整数。输出格式最多能将数组分成的块数。样例样例1输入55 4 3 2 1样例1输出1解释:将数组分成2块或者更多块,都无法得到所需的结果。例如,分成 [5, 4], [3, 2, 1] 的结果是 [原创 2020-07-01 13:42:38 · 186 阅读 · 0 评论 -
循环比赛题解
前言这道题一本通上有,但是那上面while的写法好像会炸,所以写一个递归的做法.题目链接:循环比赛观察样例,我们可以发现每2的n次方的方阵总会有右上与左下相同,左上与右下相同,并且右边的方阵对应位置的元素等于左边的对应位置的元素+当前左边方阵的边长所以我们可以每次构建从a[i][j]向下(i+1,j),向右(i,j+1),向右下(i+1,j+1)的元素,当循环的次数等于m时就返回。代码:#include<cstdio>#include<cmath>using na原创 2020-07-01 13:25:00 · 412 阅读 · 0 评论 -
挂钩题解
前言这道挂壁钩是一道dp好题! 假期第三篇题解题目描述JOI君有N个装在手机上的挂饰,编号为1…N。 JOI君可以将其中的一些装在手机上。JOI君的挂饰有一些与众不同——其中的一些挂饰附有可以挂其他挂件的挂钩。每个挂件要么直接挂在手机上,要么挂在其他挂件的挂钩上。直接挂在手机上的挂件最多有1个。此外,每个挂件有一个安装时会获得的喜悦值,用一个整数来表示。如果JOI君很讨厌某个挂饰,那么这个挂饰的喜悦值就是一个负数。JOI君想要最大化所有挂饰的喜悦值之和。注意不必要将所有的挂钩都挂上挂饰,而且一原创 2020-06-20 16:53:00 · 349 阅读 · 2 评论 -
花园橱窗布置(路径保存)
前言假期第二篇题解题目描述魔法世界的人们对艺术的追求是无止境的,我们可以从路边花店的橱窗设计就可以看出来。假设以最美观的方式布置花店的橱窗,有F束花,每束花的品种都不一样,同时,至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,并从左到右,从1到V顺序编号,V是花瓶的数目,编号为1的花瓶在最左边,编号为V的花瓶在最右边,花束可以移动,并且每束花用1到F的整数惟一标识,标识花束的整数决定了花束在花瓶中列的顺序,即如果I<J,则花束I必须放在花束J左边的花瓶中。例如,假设杜鹃花的标识数为原创 2020-06-20 16:24:47 · 268 阅读 · 1 评论 -
低买题解
前言假期第一篇题解题目题目描述给定一段时间内股票的每日售价(正16位整数)。你可以选择在任何一天购买股票。每次你选择购买时,当前的股票价格必须严格低于你之前购买股票时的价格。编写一个程序,确定你应该在哪些天购进股票,可以使得你能够购买股票的次数最大化。例如,下面是一个股票价格时间表:Day 1 2 3 4 5 6 7 8 9 10 11 12Price 68 69 54 64 68 64 70 67 78 62 98 87如果每次购买都必须遵循当前股票价格严格低于原创 2020-06-20 13:27:00 · 506 阅读 · 0 评论