Codeforces Round #729 Priority Queue 题解 (Java/C++)

题解 立刻可以想到,我们只需要统计每个+操作的x能在多少种子序列中出现即可。 假设第i步是+操作,其值为a[i]。如果这个a[i]保留到最后,那么整个过程中的所有-操作都不会操作到a[i]。也就是说,这个整个过程中,执行-操作时,必为下面两种情况之一:…

Codeforces Round #729 Strange Function 题解 (Java/C++)

题解 首先我们立刻可以注意到,当i为奇数时,f(i)=2。接着我们开始考量f(i)=3的情况。显然根据定义我们可以知道,只有i为偶数,且i不能被3整除时f(i)=3。因此我们也可以说:对于所有的i,排除f(i)=2和f(i)=3的情况,剩下的i一定不能被6整除。进一步,当我们考虑到f(i)=4的情况后,剩下的i一定不能被lcm(4,6)=12整除。…

Codeforces Round #727 ABCD 题解 (Java/C++)

A. Contest Start 题解 每一个参加者都会引起后面$\frac{t}{x}$个参与者的不满。但是对于最后几位参与者来说,因为后面没有更多参与者了,所以需要减去。 代码 Java C++…

Codeforces Round #727 PriceFixed 题解 (Java/C++)

题解 显然,对于每种商品,我们一定是恰好买a个,不会多买。也就是买的商品总数不会变(因为多买无非是为了凑折扣,但多买一个的代价正好等于折扣的好处)。于是我们可以考虑把每个商品放到不同的位置,只要这个商品对应的b值大于他的位置则可以打折。…