首页 > 其他分享 >Codeforces Round 885 (Div. 2) 题解

Codeforces Round 885 (Div. 2) 题解

时间:2023-08-01 21:11:14浏览次数:32  
标签:10 pmod 题解 Codeforces 2y 操作 Div Vika equiv

A. Vika and Her Friends

看一下样例就可以发现,Vika 以及她的朋友都不能走对角线,在这种情况下 Vika 和朋友的距离为 偶数,且朋友一定追不上 Vika

所以直接判断 Vika 和朋友的距离是否都为偶数即可

B. Vika and the Bridge

显然贪心,枚举颜色,找到相邻距离最大的两块木板,记该距离为 \(dist1\),第二大距离为 \(dist2\)

答案就是 \(max\{\frac{dist1}{2},dist2\}\)

C. Vika and Price Tags

不难看出答案最短一定是以 \(3\) 为循环节的循环,所以我们只需要找到每个位置是在哪些时间点会变为 \(0\) 即可

不难看出如果 \(x\ge 2y\),则有三次操作后:\((x,y)\to(y,x-y)\to(x-y,x-2y)\to(x-2y,y)\)

所以可以令 \(x\) 对 \(2y\) 取余,不影响答案,如此可以快速令 \(x=0\)

D. Vika and Bonuses

首先显然,最优情况一定是 先连续自增(也可以不增)再一直累积

当 \(n\equiv 5\pmod{10}\) 或 \(n\equiv 0\pmod{10}\) 时,分类讨论

剩下的情况,稍微算算,个位数将会进入 \(2\to 4\to 8\to 6\to 2\to 4\to 8\to\cdots\) 的循环

为了方便,当 \(k\le 20\) 的时候我们直接暴力,剩下的暴力跳 \(n\),使其达到 \(n\equiv 2\pmod{10}\) 的一般情况

每次循环后,\(n\) 会增加 \(20\) 这一定值,分类讨论,设循环了整 \(i\) 次,则有:

\[ans=(n+20i)(k−4i) \]

展开

\[ans=−80i^2+(20k−4n)i+nk \]

上式是一个关于 \(i\) 的开口向下的抛物线解析式,直接取其对称轴 \(i=\frac{5k-n}{40}\)

这样我们就算出了所有 \(n\equiv 2\pmod{10}\) 的最大值,再让 \(n\) 自增一次算 \(n\equiv 4\pmod{10}\) 的情况,然后是 \(n=8,n=6\),这样就结束了

E. Vika and Stone Skipping

假设答案为 \(\sum_{i=x}^y i\),等差数列求和的形式为 \(\frac{(x+y)(x-y+1)}{2}\)

不妨令我们需要的值为 \(t\),则有 \((x+y)(x-y+1)=2t\),我们要求这个方程的解

显然我们可以看出 \(x+y\) 与 \(x-y+1\) 的奇偶性不同方程才可能有解,所以我们必须把 \(2t\) 分解成一个奇数和一个偶数的乘积

如果将 \(2t\) 分解质因数,那么所有质因子 \(2\) 一定在一边,而剩下的质因子可以任意分配,所以答案就是 \(\prod_{p\not=2(cnt_p+1)}\)

要特判模意义下除以 \(0\) 的运算

F. Vika and Wiki

考虑倍增,我们需要快速计算序列操作 \(2^k\ (k\in \mathbb N^*)\) 次后的结果

手玩一下可以发现当操作 \(2^k-1\) 次时,所有 \(a_i\) 会变为 \(\oplus_{j=0}^{2^k}a_{(i+j)\bmod n}\),利用这个性质我们可以先操作 \(2^k-1\) 次,再操作一次,这样就达到了操作 \(2^k\) 次的效果,每次操作的复杂度都是 \(O(n)\),总复杂度为 \(O(n\log n)\)

标签:10,pmod,题解,Codeforces,2y,操作,Div,Vika,equiv
From: https://www.cnblogs.com/cantorsort2919/p/17599114.html

相关文章

  • ARC089B 题解
    problem&blog。给一个比较暴躁的做法。若要求\((x,y)\)的颜色为White,等价于要求\((x+k,y)\)的颜色为Black;要求\((x,y)\)的颜色为Black,等价于要求\((x\bmod2k,y\bmod2k)\)为Black。于是将全部点以黑点的形式塞到左上角\(2k\times2k\)矩阵里。枚举黑白的「分......
  • Practice on Codeforces and Atcoder in May
    CF补题题解2023.5说明:CF题直接去luogu看翻译,AT题会附上简要题意CF1821E先考虑如何高速计算权值一个显而易见的贪心是尽量在右边取括号消除,设右括号为1,左括号为-1那么我们每一次消除的括号\(i,i+1\)都满足了\(i+1\)的右边剩下的全部是右括号,代价就是往右数的个数更进一......
  • Practice on Codeforces and Atcoder in June
    \(Practice\)\(on\)\(codeforces\)\(in\)\(June\)wk,误删了4个题,但我不想补了\(CF1839D\)题意:给一个正整数序列\(a\),给定\(k\)个0,将其放进序列的任意位置里,可以进行无限次操作,每次将一个挨着0的数移动到序列的任意位置,最后删掉所有的0,求使得序列变成递增序列的最小操作......
  • Practice on Codeforces and Atcoder in July
    \(1844E\)题意:定义一个矩形\(a\)是好的,当且仅当其满足以下条件:矩形中每一个元素\(x\)都为\(A,B,C\)其中之一每一个\(2\times2\)的子矩形都必须包含三个不同的字符共用一条边的两个元素不相等给定\(k\)个限制条件,限制条件分为两类:\((x,x+1,y,y+1)\),限制\(a[x......
  • Codeforces Round 887 (Div. 2) 题解
    A.Desorting题目的核心操作就是选定一个位置\(i\),使得:对于所有\(j\lei\),\(a_j\leftarrowa_j+1\)对于所有\(j>i\),\(a_j\leftarrowa_j-1\)这样一来,操作后\(a_{i+1}-a_i\)的值就会\(-2\)因为\(a_{i+1}-a_i<0\)时,也意味着\(a_i>a_{i+1}\),所以就达到了要求那么题......
  • Educational Codeforces Round 152 (Rated for Div. 2) D. Array Painting
    初始所有点都是蓝色的,给定一个数组,每个元素为0,1,2等值,两种操作,选定一个点花1元变红,或者选定一个为1或者2的红色点,减去一个价值,让周围的点变红,最后所有点都要变红思路:贪心,对于一个数组来说我们找寻连续的不等于0的一段,判断每一段最多所能变红的存在两种情况010,这种情况花1可以最......
  • Educational Codeforces Round 152 (Rated for Div. 2) C. Binary String Copying
    题目大意为给定一个01字符串,给定m个区间,对于每个区间进行一次局部排序,求能得到的字符串种类数解法:因为字符串只包含0,1两个字符,我们观察可以得到,对于不同的区间来说如果排序后一样则说明肯定是某些位置在排序过程中无贡献,因此我们只需找出有贡献的位置即可对于一个区间[l,r],来说......
  • RTSP流媒体服务器LntonNVR(源码版)平台硬件设备拔电关闭后不能自动重启的问题解决方案
    LntonNVR视频边缘计算网关可以放置在项目现场,7x24小时不间断使用,通电联网即可成功运行,部署操作十分简单。我们在测试时,将LntonNVR注册到服务启动,拔掉硬件设备的电源后,再次恢复供电,发现LntonNVR服务并没有再次启动。对此我们也进行了分析与排查。排查步骤如下:1、首先检查是否已经......
  • 【题解】Luogu[P2420] 让我们异或吧
    Link看到是树,又多组询问,立马想到类似的求和问题,异或不好理解,我们想求和怎么做,维护\(dis_i\)表示\(i\)节点到根的权值和,那么对于\(u,v\)两点路径上的权值和就是\(dis_u+dis_v-2\timesdis_{\mathrm{lca}(u,v)}\),这是很经典的问题了。事实上刚才的求和我们可以转化一下,我们......
  • 国标GB28181视频平台LntonGBS(源码版)国标平台出现报错“缺失dll文件”的问题解决方案
    LntonGBS是基于国标GB28181协议的视频云服务平台,它可以支持国标协议的设备接入,在视频能力上能实现直播、录像存储、检索与回放、云台控制、告警上报、语音对讲、平台级联等功能,既能作为业务平台使用,也能作为能力层平台调用。技术人员在用户服务器部署LntonGBS平台,提示缺失某个dll文......