首页 > 其他分享 >Codeforces Round 941 (Div. 1) VP记录

Codeforces Round 941 (Div. 1) VP记录

时间:2024-09-06 21:49:17浏览次数:3  
标签:最大值 大值 Codeforces 然后 941 VP 区间 考虑 Method

Codeforces Round 941 (Div. 1) VP 记录

我了个掉分场啊。没场切 C 导致看起来会 - 50。

A

排序后差分。它毕竟还是个公平组合游戏,所以如果 Alice 在一次操作中能够控制能把后手扔给自己还是对面就赢了。

然后我们发现如果一个差分值 \(x \ge 2\) 就是必胜的吧。先手可以自己取完也可以剩一个给后手,输出当前先手即可。

然后如果当前是 \(0\),先后手不变,如果是 \(1\),先后手交换。如果结束了都没有一个 \(x > 2\),那么判下是谁最后面临着不能动的局面就行。

B

不会构造题,写了一小时二十分钟自信掉分。

把 \([1, n] - \{k\}\) 分成 \([1, k), (k, n]\)。

先考虑怎么能做到能且仅能表示 \([1, k)\) 的所有数。

考虑如果用一堆 \(2\) 的幂能够做到表示 \([1, 2 ^ x)\) 的所有数。

那么我们找到一个最大的 \(x\) 满足 \(k - 1 \ge 2 ^ x - 1\),并把 \(2^0, 2 ^ 1, \dots , 2 ^ {x - 1}\) 扔进答案里就能表示 \([1, 2 ^x)\)。

再扔个 \((k - 1) - (2 ^ x - 1)\) 进去就能恰好表示 \([1, k)\) 了。

然后我们把 \(x\) 后面的 \(2\) 进制幂也都扔回去就能得到大部分数了。

最后考虑填空,考虑哪些位置是没有的。因为我们损失了 \(2 ^ x\),但是 \(2k \ge 2 ^ x\)。

所以扔个 \(k + 1\) 进答案表示 \([1, k) \cup (k, 2k]\) 的数,然后就能用当前数得到一个 \(2 ^ x\),对后面没什么影响。

但是还有最后类个空要填。此时我们无法解决 \((x > k) + k\) 这样的数,因为我们在这一个 \(2^x\) 段中没有 \(k\)。然后其实直接扔个 \(2^x + k\) 就是对的,手玩一下,它与其他的数能够拼成所有数了。

C

考场上想 B 想不到然后在 C 随便写了发马拉车发现过不了就重新回去想 B 浪费了 20min,而实际上如果这 20min 认真利用起来我是真可以切掉这题的。

注意到 \(1\) 和 \(0\) 都是可以缩的,折成像 Z 字形的东西。

然后其实,如果 \(a_{i } = a_{i - 1}\) 就以 \(i - 0.5\) 为折痕折一下就行,这一定是合法的且最优的,证明合法性很简单,最优性看着就很对是吧。

D

不会构造题。

考虑如果没有吃掉一个数怎么构造。

有两种构造方法:

Method 1:

考虑每个出现次数为奇数的数。它们代表的区间一定跨过回文中心,并且本身也对称。也就是区间 \([i, n - i + 1]\)。

那把每一个出现次数为奇数的数从小到大排个序,显然这些区间长度越长其和越大,简单的做个差分就能还原序列了。

Method 2:

考虑区间 \([1, n]\) 最大值和次大值,要求最大值和次大值不同。

那么最大值一定是 \([1, n]\),次大值一定是 \([1, n - 1]\),减一下就能得到 \(a_n\) 也就是 \(a_1\)。

然后删掉 \([1, n]\) 找第三大值得到 \([1, n - 2]\) 后做差就行了……吗?

注意到 \([2, n - 1]\) 区间长度和 \([1, n - 2]\) 相等,有可能 \([2, n - 1]\) 的值大于 \([1, n - 2]\),所以还得删掉 \([2, n - 1]\) 这一区间。然后就能用同样的方法得到 \(a_{n - 1}\) 即 \(a_2\)。

形式化的,每次求出 \(a_i\) 后,把以 \(i + 1\) 为左端点的和以 \(n - i\) 为右端点的区间都删了然后求当前最大值和次大值,差分下去就能还原序列。


考虑对于删除一个而言,这两种方法是否适用。

Method 2 只要最大值存在就能用,而 Method 1 只有删除最大值才能适用,两种方法互补。

讨论最大值出现了 \(1\) 次还是 \(2\) 次。\(1\) 次说明最大值还在,用 Method 2,否则用 Method 1 即可。

E

不会构造题。

但是我觉得这题代码比 D 题好写。

题解 CF1965E【Connected Cubes】 - 洛谷专栏 (luogu.com.cn) 尺子姐的题解讲的非常清楚,我觉得我讲一遍也就只是复述一遍题解而已,而且我懒得放图。

F

不会 Hall 定理是否应该爬?

标签:最大值,大值,Codeforces,然后,941,VP,区间,考虑,Method
From: https://www.cnblogs.com/AzusidNya/p/18401083

相关文章

  • Codeforces Round 621 (Div. 1 + Div. 2)
    USACO入侵CFA.CowandHaybales题意:一行\(n\)个数,每次可以将1从一个数移动到相邻的数,求\(d\)次内\(a_1\)最大值。思路:显然先移动\(a_2\),然后依次类推。提交记录B.CowandFriend题意:在二维平面上,一次只能走恰好\(a_1\sima_n\)中的一个数,求从原点走到\((x......
  • CodeForces 2009G Yunli's Subarray Queries 题解
    云璃!高质量Div.4,吊打某些Div.2Only/Edu/Div.3。本题是下面四道题目的有机结合,优雅且经典。LuoguP4168[Violet]蒲公英|LuoguP1997faebdc的烦恼|LuoguP3203[HNOI2010]弹飞绵羊|LuoguP3246[HNOI2016]序列建议先完成这四题。(必须指出:用蒲公英的分块方......
  • DVPP问题汇总
    1.aclrtSetDevice使用不当导致内存泄露问题对于Atlas推理系列产品(Ascend310P处理器),调用本接口会隐式创建默认Context,在标准形态下,该默认Context中包含2个Stream,1个默认Stream和1个执行内部同步的Stream。参考网页:API参考-aclrtSetDevice此接口需与aclrtResetDevice接口配......
  • Codeforces Round 968 (Div. 2)
    Preface今天课比较少,就抽点时间补一下之前欠的CF这场总体来说题还算简单,E1之前的题基本都是一眼,不过E2没往转化到区间不交的情况想,F更是完全没想到colorcoding,只能说太菜太菜A.TurtleandGoodStrings不难发现只要比较开头和结尾的字符是否相同即可#include<cstdio......
  • Stable Diffusion读你大脑信号就能重现图像,研究还被CVPR接收了
    大脑活动到图像,StableDiffusion能重建。如果人工智能可以解读你的想象,将你脑海中的图像变成现实,那会怎样?虽然这听起来有点赛博朋克。但最近发表的一篇论文,让AI圈吵翻了天。这篇论文发现,他们使用最近非常火的StableDiffusion,就能重建大脑活动中的高分辨率、高精......
  • Codeforces Round 947 (Div. 1 + Div. 2) VP记录
    CodeforcesRound947(Div.1+Div.2)VP记录我是唐诗,我是唐诗,我是唐。场切:ABCE。笑点解析D是我不在场的GJ模拟赛的T1签到题。A找\(a_i<a_{i-1}\)然后按数量分讨即可。B最小值要取,不能被最小值表示出来的数的最小值要取,暴力即可。C先对相邻两个值的较小......
  • Day85 APP攻防-资产收集篇&反证书检验&XP框架&反代理VPN&数据转发&反模拟器
    知识点1、APP资产-抓包突破&反模拟器2、APP资产-抓包突破&反证书检验3、APP资产-抓包突破&反代理VPN没有限制过滤的抓包问题:1、抓不到-工具证书没配置好2、抓不到-app走的不是http/s不走http/s协议的数据包抓不到可以用封包抓有限制过滤的抓包问题:3、抓不到-......
  • Codeforces LATOKEN Round 1 (Div. 1 + Div. 2)
    A.ColourtheFlag题意:给定一个棋盘,一些格子已经染上黑白色,判断能否将剩下的格子染色,使得相邻格子不同色。输出构造。思路:考虑一个棋盘的合法染色方案只有两种,分别比较一下即可。提交记录B.HistogramUgliness题意:一个柱状图,权值定义为操作次数加上竖直方向的周长。一次......
  • CF1941场题解
    RudolfandtheTicket算法:枚举。题意简述:从\(a\)数组中和\(b\)数组中各选出一个数,使得它们的和不超过\(k\),求选法数量。考虑直接枚举每一种可能的搭配即可。Rudolfand121算法:贪心。题意简述:定义一次操作为,该位置上的数减去\(2\),其前一个和后一个位置(必须存在)上的数......
  • Codeforces Round 971 (Div. 4) ABCD题详细题解(C++,Python)
    前言:    本文为CodeforcesRound971(Div.4)ABCD题的题解,包含C++,Python语言描述,觉得有帮助或者写的不错可以点个赞    比赛打了没一半突然unrated了就不是很想继续写了,早起写个题解    (之前的div3也没复盘,哎真菜)目录题A:题目大意和解题......