首页 > 其他分享 >CodeTON Round 3 (Div. 1 + Div. 2, Rated, Prizes!)

CodeTON Round 3 (Div. 1 + Div. 2, Rated, Prizes!)

时间:2024-05-25 10:28:52浏览次数:28  
标签:Rated 匹配 max sum 括号 Prizes Div oplus

切 5 道。

A

\([a_1=1]\)

B

\(\max(\max(xy),\max(x^2),\max(y^2))\)

第一部分可以选整个数组,第二部分和第三部分是最大连续 0 段和 1 段。

C

操作等价于 \(a_{l \sim r} \oplus 1\),\(b_{l \sim r} \oplus 1\),\(b_{1 \sim n} \oplus 1\)。

考虑先把 \(a\) 全部变成 \(0\),使用 i i 操作完成。

那么,只有当这样操作结束后 \(b\) 是全部相同的情况下,才可能有解。

如果 \(b\) 是全 \(1\),那么就进行如下操作:

1 1
2 2
1 2

于是可以在 \(n+3\) 次操作内完成任务。

D

\[\prod_{i=1}^{n-1}\sum_{j=1}^{m}[\operatorname{gcd}(a_i,j)=a_{i-1}] \]

莫反变为

\[\prod_{i=1}^{n-1}\sum_{d|\frac{a_i}{a_{i+1}}}\mu(d)\lfloor \frac{m}{a_{i+1}d} \rfloor \]

直接对着式子求即可。

E

先考虑单个串的代价怎么求,容易发现是 \(\max(左括号数量,右括号数量)-匹配括号对数\)。

这个是曾经的模拟赛套路。

求匹配括号对数直接在原串上匹配,对于每一对在 \((l,r)\) 的匹配括号,匹配括号对数加上 \(l(n-r+1)\)。

怎么求 \(\max(左括号数量,右括号数量)\) 呢?

将 \(\max(a,b)\) 转化为 \(\frac{a+b+|a-b|}{2}\)。

\(a+b\) 非常好求,\(|a-b|\) 比较难求,考虑将左右括号转化为 \(\pm 1\) 序列,那么问题就是子串绝对值和,将前缀和序列排序,答案即为 \(\sum_{i=1}^{n}\sum_{j=1}^{n}s_j-s_i\),这里注意到每一个 \(i\) 被小于 \(i\) 的位置加一次,被大于 \(i\) 的位置减一次,因此化简为 \(\sum_{i=1}^{n}a_i(2i-n)\)。

假如计数排序,有复杂度 \(O(n)\)。

标签:Rated,匹配,max,sum,括号,Prizes,Div,oplus
From: https://www.cnblogs.com/acwing-gza/p/18212138

相关文章

  • CF Round946 (Div. 3)C:map的map<pair<int,int>int>映射 + 性质
    BeautifulTriplePairs题目描述Polycarpwasgivenanarray$a$of$n$integers.Hereallylikestriplesofnumbers,soforeach$j$($1\lej\len-2$)hewrotedownatripleofelements$[a_j,a_{j+1},a_{j+2}]$.Polycarpconsidersapa......
  • Codeforces Round 946 (Div. 3) G Money Buys Less Happiness Now(反悔贪心)
    MoneyBuysLessHappinessNow1.题目大意:有n天,每天可以赚x块钱,然后每天可以通过花\(C_{i}\)块钱购买1点快乐值,然后每天赚的钱至少要在下一天才能用,问最多能获得多少快乐值。2.解题思路:我们发现天数变得很多,不能像e题那样dp了,所以要用贪心。具体来讲,我们碰到当前能买的就直接......
  • Codeforces Round 946 (Div. 3)
    C.BeautifulTriplePairs题意:优美组的定义是一共三对有且只有一对对应的数字不相同,求有多少个优美三元组思路:对于只有三对,而且只有一对不同,首先看前面遍历过的三元组会对后面的三元组产生影响,若是不记录前面对后面三元组的次数,那么我们要进行两次循环O(n^2)会寄的,因此我们......
  • Mybatis框架 <insert> 标签内 useGeneratedKeys="true" 和 keyProperty="xxx" 属性
    useGeneratedKeys="true" 和 keyProperty="secondIndex" 这两个属性经常与MyBatis(Java持久层框架)的 <insert> 标签一起使用。这两个属性主要用于在插入记录后,从数据库返回的自动生成的主键或其他键值中,获取该键值并将其设置到Java对象的某个属性中。useGeneratedK......
  • LeetCode Greatest Common Divisor of Strings All In One
    LeetCodeGreatestCommonDivisorofStringsAllInOneLeetCode1071errorsfunctiongcdOfStrings(str1:string,str2:string):string{letresult=``;lettemp=[];if(str1.length>str2.length){letreg=newRegExp(str2,'g'......
  • Topcoder SRM616-Div1-Lv2 ColorfulCoins
    涉及知识点:奇妙Ad-hoc前言一道很不常规的题目,思维难度大代码简单,而且这种思路很难在赛时想到,故记录一下。题意某国的货币系统硬币有\(n\(\leq60)\)种面额\(val_i\(\leq10^{18})\),其中最小的面额为\(1\),并且所有的面额之间都保证两两有倍数关系,每种面额的硬币有独一无......
  • CF Round946 (Div. 3)B:如何写映射
    SymmetricEncoding题目描述Polycarphasastring$s$,whichconsistsoflowercaseLatinletters.Heencodesthisstringusingthefollowingalgorithm:first,heconstructsanewauxiliarystring$r$,whichconsistsofalldistinctlettersofthestrin......
  • CF Div. 3 C Beautiful Triple Pairs
    原题链接标签组合数学(combinatorics)数据结构(datastructures)题目大意一个数组\(a\)。对于每个\(j\)(\(1\lej\len-2\))写出一个由\([a_j,a_{j+1},a_{j+2}]\)组成的三元组。满足以下条件之一,那么这对三元组就是美丽的:\(b_1\nec_1\)和\(b_2=c_2\)......
  • Codeforces Round 946 (Div. 3)
    CodeforcesRound946(Div.3)总结:赛时状态很好,做出了感觉平常会赛时寄掉但是赛后补题的E,但是也因此花费时间太多,没时间去做更简单的F和G,赛后G用时十分钟AC,F码的有点麻烦,用时40分钟左右,感觉三个小时能AK?A.PhoneDesktop题意:给定3*5的平面,有a个1*1的格子和b个2*2的格子,求完全......
  • vue3+ts 指令拖拽div案例
    <template><divclass="box"v-move><divclass="header"></div><div>内容</div></div></template><scriptsetuplang="ts">import{ref,Directive,DirectiveBinding}......