CodeForces - 299C Weird Game

CodeForces - 299C有两个 $2n$ 的二进制串,两个人轮流取,第一个人取第一行,第二个人取第二行,取第 $i$ 个位置时要求两个人都没有取过,问谁能拿走更多的 1判断上下同为 1 的位置的奇偶性#include<bits/stdc++.h> using namespace std; const int maxn = 2.2e6; char a[maxn], b[maxn

- 阅读全文 -

CodeForces - 899D Shovel Sale

CodeForces - 899D$1$~$n$ 共 $n$ 个数字,任选两个加起来后面最多有多少个 $9$,输出方案数$5*10^i$ 是末尾9数量的分界点,枚举两个数的和的第一位再计算#include<bits/stdc++.h> using namespace std; const int maxn = 2.2e6; long long n, ans; long long sol

- 阅读全文 -

CodeForces - 622C Not Equal on a Segment

CodeForces - 622C一个长度为 $n$ 的数组,每次询问 $l$ ~ $r$ 内和 $x$ 不同的数字在什么位置,不存在就输出 $-1$ 记录每个点后面和它不同数字出现位置或者这个数字所在相同块的第一个位置在哪,类似并查集#include<bits/stdc++.h> using namespace std; const int maxn = 2.2e6; int a[m

- 阅读全文 -

CodeForces - 771B Bear and Different Names

CodeForces - 771B$n$ 个人,每个人开始划分为长度是 $k$ 的编队,这样一共有 $n - k + 1$ 个编队,告诉你每个编队是否有重名的人,构造这 $n$ 个人的名字。先设每个人名字都不一样,然后每个有重名的区间让最后一个人等于第一个人。#include<bits/stdc++.h> using namespace std; const int maxn = 2.

- 阅读全文 -

CodeForces - 940E Cashback

CodeForces - 940E长度为 $n$ 的数组,随意分段,每段的值是去掉前 $\frac{len}{c}$ 小后的区间和,求整个数组分段后值的和最小是多少。考虑每个分段要么长度为 $1$ 要么长度为 $c$ 一定是最优的。单调队列维护好区间最小值,然后 dp 就好了 $dp[i]=min\{dp[k]+cal(k+1, i)\ |\ 1 \leqslant k < i\}$#inc

- 阅读全文 -

  碎碎念

  标签

  友情链接