<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GYY13141的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GYY13141</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GYY13141]]></copyright><item><title><![CDATA[CF1792]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/144081725</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/144081725</guid><author>GYY13141</author><pubDate>Wed, 27 Nov 2024 13:52:52 +0800</pubDate><description><![CDATA[可以发现，最后一次动的一定是(1,n)，剩下2，3....,n-2,n-1,倒数第二次动(2,n-1)，依次类推。所以当我们有一个[k,n-k+1]，这里面数字在排列上位置有序，则这一段不用动，动外部即可。考虑如何求这个区间最大长度，首先长度最小时，k为。CF1792B,第1类肯定全选，第二类与第三类交替选，这样可以让两个人都不会下场，然后第二和第三类多的那个看看能演多少，如果它也能演完，再考虑第四类就可以。CF1792A,当怪物血量为1时，可两个一起杀，否则就单杀。,然后往两边扩展即可。]]></description><category></category></item><item><title><![CDATA[CF1923]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/144010869</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/144010869</guid><author>GYY13141</author><pubDate>Sun, 24 Nov 2024 18:11:55 +0800</pubDate><description><![CDATA[CF1923C,我们想让一个区间内两数组和相同，相应位置的数两两不同，我们可以想，若区间内有奇数个，则。CF1923B，首先，肯定是集中火力先把靠近自己的打掉，所以按与自己距离排序，然后顺序打即可。CF1923A，稍加推导可发现，所有1的块之间隔着的0的个数即为答案。个减1.我们只需判断区间内有多少个1即可（1不能减1）个数减1，其他数加一，有一个加2，偶数个则。]]></description><category></category></item><item><title><![CDATA[CF1930]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143974574</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143974574</guid><author>GYY13141</author><pubDate>Fri, 22 Nov 2024 15:30:44 +0800</pubDate><description><![CDATA[由于我们要让得分最大化，肯定是大的尽量选，所以让小的和小的凑对，大的和大的凑对，具体实现就是先排序，让后编号为奇数的都取。再排序就可以，但他要不可重，所以当有一段重复，我们让第i个数为min(i-1个数-1，i个数）即可.,所以直接贪心，发现1则填1，下面两位不用管即可。，首先考虑S可重时，我们直接取所有。，这样就可以了，所以可以构造。表示以i为结尾的答案和，若。，上一题的升级版，由于。]]></description><category></category></item><item><title><![CDATA[CF1976]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143913970</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143913970</guid><author>GYY13141</author><pubDate>Wed, 20 Nov 2024 15:38:34 +0800</pubDate><description><![CDATA[首先，可以发现可能人员爆表的只有一个职业，我们使它是。，可以发现，当一个不删时，有一个节点，结点前的贡献都是。更近，就先变，在挪到n+1处，否则直接挪，取min。,当我们删这个点之后的点求从总贡献中减。,若删这个点之前的点，若删去的点贡献为。,否则它会使后面一个点从贡献。,我们要从其中挑一个拿到。，首先，在1~n中每个。，不用额外耗费，否则若。,找出这个点，计算。]]></description><category></category></item><item><title><![CDATA[CF1946]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143854573</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143854573</guid><author>GYY13141</author><pubDate>Mon, 18 Nov 2024 13:34:53 +0800</pubDate><description><![CDATA[先排序，然后可发现，如果中位数下一个数大于它，则加一次就行，否则计算从中位数开始，和中位数相等的有多少个，加这麽多次，便可以将中位数变大1。,最小值最大，单调性易证，考虑二分。每次二分到一个最小值，dfs取check，能分开就分开，看最后分出的段是否大于k。,先求最大字段和（可以一个不选），每次将这些数相加，将和插入它们之中，所以就是最大子段和*(1+2+4...+]]></description><category></category></item><item><title><![CDATA[CF1969]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143714506</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143714506</guid><author>GYY13141</author><pubDate>Tue, 12 Nov 2024 15:17:12 +0800</pubDate><description><![CDATA[CF1969A,通过手模发现，当有两个人互为最好朋友时，2张邀请函（给他俩），否则邀请3人（比如3人A,B,C,a->B,b->c,邀请ABC,AB会来。表示a的前i项操作j次，然而，在定义时，容易发现，我们不好判断在 j次操作中，的不买（怎么都亏本），一定买k个以上（要不还是亏），要被B白嫖k个，其它的。可发现这里都是一段一段改变的，所以可得转移式。CF1969C,显然，贪心不行，所以dp,设。B策略，因为买一个会让A亏。CF1969D，考虑A的策略，为了方便，我们钦定状态中，，mn数组可预处理。]]></description><category></category></item><item><title><![CDATA[CF1998]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143682906</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143682906</guid><author>GYY13141</author><pubDate>Mon, 11 Nov 2024 14:25:02 +0800</pubDate><description><![CDATA[rs为n/2右面第最远的b[i]为1的位置，ls为n/2+1最近的b[i]为1。再考虑k没有全部加到选出的数里（为什么会这样？因为当我们想为一个数加k可能会改变他的位置），二分中位数即可。CF1998C,先将数组排序，首先考虑没有加k情况，答案一定是。的特殊路径全没用，而一条路径u->v,E能在B前到v，CF1998D 注意到一个性质，当B从s出发，起点。的和，则我们将原排列最后一数提到最前面，则原。,否则先考虑k全部加到我们要选的数里,，所以u->v路径E能获胜s的范围为。]]></description><category></category></item><item><title><![CDATA[CF1999]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143643946</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143643946</guid><author>GYY13141</author><pubDate>Sat, 09 Nov 2024 13:56:39 +0800</pubDate><description><![CDATA[CF1999E，由于它每次将一个数除以三时要将另个数乘三，且我们要让全变为0出的次数少，可以想到将一个数除为0后别的乘0都往它身上乘（因为这样不会增加除的次数），这样只有第一个被除的数的次数需要乘二，我们让最小的数作为第一个。CF1999D,要将s中所有问号改掉，由于不要求连续，s与t能匹配上的字符就匹配，碰到问号就直接将他改成与t需匹配的位置相同字符，其他问号随便改个字符即可。CF1999F，由于只有01，0做中位数时不会产生贡献，所以我们只要考虑1的贡献，而当1有贡献，选的k个数中至少有。]]></description><category></category></item><item><title><![CDATA[CF1988]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143627822</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143627822</guid><author>GYY13141</author><pubDate>Fri, 08 Nov 2024 15:37:49 +0800</pubDate><description><![CDATA[CF1988E,用单调栈处理每个点左面与右面第一个小于它的，计算不删除时每个点贡献，然后分类讨论删除的位置位j时对每个f[i]有什么贡献即可。CF1988C，每次选数最后一个一定是n，所以从n最低1位1开始置为0，一次向上枚举即可。CF1988B,可将每段0合并成1个0，若1总数>合并后0总数，则可，否则不可。CF1988A ,因为每次可以加k-1个1和1个n-k+1，加一些特判。代表u点被第i次选到，可证最多选log+1次，就可以直接做了。CF1988D,树形dp，设。]]></description><category></category></item><item><title><![CDATA[CF1986]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143569636</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143569636</guid><author>GYY13141</author><pubDate>Wed, 06 Nov 2024 15:16:36 +0800</pubDate><description><![CDATA[当桶中有偶数个时，第1个与第2个配，第三个与第四个配.....,当有奇数个，需要有一个不用参与改变，它将两边分开，每向右挪一次，将右面的一部分给左面。考虑它要求选i尽量小，i相同j尽量小，所以当某个位置未变为不合法，则比它i/j大的位置不会用到，就顺次往下，统计答案就行。由于要让改后字典序最小，肯定是吧c字符串中小的往前放，于是我们对ind和c排序，将ind去重（要不就被覆盖了），然后将对应位置赋值就行了。的复杂度，因为要n-2个符号，所以必有一个两位数，我们枚举这个两位数是啥，然后处理序列。]]></description><category></category></item><item><title><![CDATA[CF38题解（ABCE)]]></title><link>https://blog.youkuaiyun.com/GYY13141/article/details/143359889</link><guid>https://blog.youkuaiyun.com/GYY13141/article/details/143359889</guid><author>GYY13141</author><pubDate>Wed, 30 Oct 2024 11:21:24 +0800</pubDate><description><![CDATA[这题一眼$dp$或贪心，由于$n$较小，考虑$dp$,设$dp_{i,j}$表示考虑到$i$,最后一个固定的为$j$。$dp_{i,j}(j<i)$由$dp_{i-1,j}$转移$dp_{i,i}$由最小的$dp_{i-1,j}$转移。棋盘上的马和车能吃到的位置，和放马后后吃掉原马和车的位置都不能放。显然，这是一个签到题。容易发现，从a升到b其实就是$d_a$到$d_{b-1}$的和，做个前缀和就好了。注意到，$a_i$和$n$的范围都不大，可以枚举百叶窗长度，然后求一下面积，最后取个$max$就行。]]></description><category></category></item></channel></rss>