little 1333a artem cf

【CF1327C】Game with Chips(构造)

**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; ll n,m,k; ll sx[200+10],sy[200+10],fx[200+10],fy[200+10]; int main(){ ios::sy ......
1327C Chips 1327 Game with

CF383E Vowels

[题目链接](https://codeforces.com/problemset/problem/383/E) 拿到这题,看到求答案的方式:“平方的异或和”。这是就能想到可能有两种方式统计答案: * 直接按照他所说的去算。 算出每一种情况下的数量平方再取个异或和。 * 拆贡献 既然是平方,就无异于点 ......
Vowels 383E 383 CF

CF449D Jzzhu and Numbers

[原题链接](https://codeforces.com/problemset/problem/449/D "原题链接") 首先我们让 $c_s$ 表示有多少 $a_i$ 是 $s$ 的超集,那么有:取与后是 $s$ 的超集的集合个数 $f_s=2^{c_i}$。 再让 $g_s$ 表示有多少集合 ......
Numbers Jzzhu 449D 449 and

CF1860C Game on Permutation

[递推法解决博弈论问题。](https://codeforces.com/problemset/problem/1860/C "递推法解决博弈论问题。") 博弈论问题基本思路是先确定“状态”,即先手必胜或者先手必败。这里定义“必胜/必败”为**走到当前格子的人**的结局(赛时因为搞混了走入的人和走出 ......
Permutation 1860C 1860 Game CF

CF1288D

看到题目中有很多 $\min,\max$,一眼二分答案。 考虑一个常见的套路:假设我们二分的值是 $mid$,那么我们在判断合法性时把数字矩阵变成 $01$ 矩阵:假若 $a_{i,j}\geq mid$,则赋值为 $1$;否则为 $0$。 用了这个套路后,我们可以把一行中最小值是否 $\geq m ......
1288D 1288 CF

CF1712F Triameter 题解

## Description 你有一棵有 $n$ 个点的树,树上的每条边权值都为 $1$。现在有 $q$ 次询问,每次询问一个整数 $x$,并将叶子结点全部相连上权值为 $x$ 的边(操作不会保留)。问每次操作后图的直径是多少。图的直径定义为 $\underset{1\leq uans$ 且 $h_ ......
题解 Triameter 1712F 1712 CF

CF1864B Swap and Reverse

### 题目大意 给定一个长度为 $n$ 的字符串 $s$ 和一个整数 $k$。 你可以进行若干次操作: - 选取一个 $i$($1\le i\le n-2$),交换 $a_i$ 和 $a_{i+2}$ - 选取一个 $i$($1\le i\le n-k+1$),翻转区间 $s_{[i,i+k-1] ......
Reverse 1864B 1864 Swap and

【题解】Pinely Round 2 D,E,F(CF1863)

## D.Two-Colored Dominoes ### 题目描述: 有一个$n\times m$棋盘,被分成若干小格。棋盘上还有一些多米诺骨牌。每张骨牌覆盖相邻的两个小格(即共用一条边的两个小格),没有两张骨牌重叠。 皮特认为这块棋盘太无聊了,需要涂上颜色。他要把多米诺骨牌的格子涂成黑色和白色。 ......
题解 Pinely Round 1863 CF

【CF1528A】Parsa's Humongous Tree(树、动态规划)

**题目大意:** 给定一颗树,每个节点有两个数,为每个节点选择其中一个数,求所有相邻节点所选数之差的绝对值之和。 *** 考虑动态规划。 设$dp_{u,0}$为节点i选择较小的数,以节点$u$为根的子树对答案的贡献的最大值。 设$dp_{u,1}$为节点i选择较大的数,以节点$u$为根的子树对答 ......
Humongous 动态 1528A Parsa 1528

CF1863A Channel

## 思路 ~~最开始没看懂题意,还想了会儿。~~ 容易发现,如果某个时刻存在总人数是满的,那么一定所有人都看到了,输出 ```YES```。 否则的话,如果不算减少的人数,总人数超过了 $n$,即认为每次新增的人都是之前没看过的人(虽然最终可能会超过 $n$,不符合情况),这样的话可能所有人都看到 ......
Channel 1863A 1863 CF

CF1863B Split Sort

## 思路 对于每次操作,会把序列分成两个部分,两部分之间不会排序。 考虑仅每次排一个数字,理由如下: 假设已经排好了 $1,2,3\cdots i-1$ 的顺序,对于数字 $i$,如果 $i+1$ 在该数字的前面,那么 $k$ 应选择为 $i+1$,这样才能排好 $i$ 和 $i+1$。如果选择的 ......
1863B Split 1863 Sort CF

CF1863C MEX Repetition

## 思路 乍一看,感觉无从下手,于是就先列举了几个例子: ``` 02 10 21 02 013 201 320 132 013 12345 01234 50123 45012 34501 23450 12345 ``` 容易发现周期是 $n+1$,下面解释理由: 首先因为数量 $n$,且两两各不 ......
Repetition 1863C 1863 MEX CF

CF1863D Two-Colored Dominoes

## 思路 首先考虑保证每行的黑白数量一样,横着的一定是贡献一黑一白,所以只用考虑竖着的,同理竖着的任何方案也不会影响横着的要求。 因为两个同行的竖着的颜色可以互换,所以在满足条件的情况下,谁黑谁白无所谓。 考虑从上往下满足,因为 ```D``` 的格子已经在上一行中确定了,所以可以在上一行时就先把 ......
Two-Colored Dominoes Colored 1863D 1863

CF1826E

题意:给定一个物品序列。每个物品有 $m$ 种属性和一个收益(第 $i$ 个物品的第 $j$ 种属性为 $r_{j,i}$)。你需要从原序列中取出几个物品(可以乱序取),并给这些取出的物品安排顺序,使得新的物品序列满足:对于任意 $i,j[i 点击查看代码 ``` #include #define ......
1826E 1826 CF

【CF1395C】Boboniu and Bit Operations(贪心、位运算)

**题目大意:** 数组$a$长度为$n$,数组$b$长度为$m$,构造数组$c$满足$c[i]=a[i]\&b[j]$,求数组$c$按位或的和的最小值。 *** 设题目的答案为$ans$。 由于数组$a$和$b$的元素值小于$2^{9}$,所以数组$c$元素和$ans$在二进制表示下最多为$9$位 ......
Operations Boboniu 1395C 1395 Bit

【题解】Educational Codeforces Round 152(CF1849)

## A.Morning Sandwich ### 题目描述: 吃货小 C 喜欢三明治,他有三种材料:面包、芝士、火腿。正确的三明治组合应为一层面包和一层芝士或火腿之一轮流放置,以面包为结尾,例如面包-芝士-面包-火腿-面包就是合法的三明治。 给定每次做三明治的材料:$ b $ 面包,$ c $ 芝 ......
题解 Educational Codeforces Round 1849

CF666E Forensic Examination 题解

一、题目描述: 给你一个长度为 $n$ 模板串 $S$ 以及 $m$ 个匹配串 $T$。 $q$ 次询问,给定 $l,r,L,R$,询问 $S_l\sim S_r$ 在 $T_L\sim T_R$ 中出现次数最多的字符串编号以及最多的出现次数。 注意,若有多个出现次数最多的字符串,取编号最小的那一个 ......
题解 Examination Forensic 666E 666

【CF1374E1】Reading Books (easy version)(贪心)

**题目大意:** 给出$n(1\le n\le2\times 10^{5})$个三元组$(t,a,b)(0\le a,b\le 1)$,选出其中任意个,使得被选中的元素$a$、$b$的总和均为$k$,求$t$总和的最小值 *** 因为被选中的元素$a$、$b$的总和均为$k$,所以被选中的三元组中 ......
Reading version 1374E Books 1374

cf上如何防止unordered_map被hack

# 打cf的时候用unordered_map防止被hack可以重新自定义哈希函数 ## 第一种 ``` struct custom_hash { static uint64_t splitmix64(uint64_t x) { x ^= x > 7; x ^= x > 30)) * 0xbf5847 ......
unordered_map unordered hack map

CF1864C 题解

# CF1864C Divisor Chain 题解 ## Links [洛谷](https://www.luogu.com.cn/problem/CF1864C) [Codeforce](https://codeforces.com/problemset/problem/1864/C) ## De ......
题解 1864C 1864 CF

CF1864C Divisor Chain 题解

## 题意 给定一个整数 $x$,定义一个操作: > 选择一个 $x$ 的因数 $d$,把 $x$ 修改为 $x-d$。 限制相同的 $d$ 值不能选择超过 $2$ 次,需要在最多 $1000$ 次操作内把 $x$ 操作至 $1$,求操作序列。 ($1 \le x \le 10^9$)。 ## 题解 ......
题解 Divisor 1864C Chain 1864

CF1864B 题解

# CF1864B Swap and Reverse 题解 ## Links [洛谷](https://www.luogu.com.cn/problem/CF1864B) [Codeforces](https://codeforces.com/problemset/problem/1864/B) # ......
题解 1864B 1864 CF

CF1864B Swap and Reverse 题解

## 题意 给定一个长度为 $n$ 的字符串 $s$ 和一个正整数 $k$,每次可以进行如下两种操作当中的一种(字符串下标从 $1$ 开始标号): - 选择 $i \in \left[1, n - 2\right]$ 并交换 $s_i$ 和 $s_{i + 2}$; - 选择 $i \in \lef ......
题解 Reverse 1864B 1864 Swap

CF1178G The Awesomest Vertex

> 给定一棵树与两个序列 $a\set{n}$ 与 $b\set{n}$,定义 $R\left(u\right)$ 为节点 $u$ 的祖先集合,节点 $u$ 的权值定义如下: > > $$\left| \sum_{i \in R\left(u\right)} a_i \right| \times \ ......
Awesomest Vertex 1178G 1178 The

CF1833D Flipper 题解

赛场上思路出来了但是代码没调出来。 首先考虑右端点,很明显,要让操作后的序列字典序尽量地大,那么就要使操作后的序列第一个数尽量地大,考虑 $n$ 或 $n-1$,如果 $n$ 在原序列的第一个位置,那么此时无论怎么调整都无法使得它在新序列的第一个位置,此时就要考虑让 $n-1$ 在新序列的第一个位置 ......
题解 Flipper 1833D 1833 CF

CF1864D Matrix Cascade 题解

首先把式子拆一下,可以知道 $x-i \ge |y-j|$ 等价于 $x-y \ge i-j$ 和 $x+y \ge i+j$,注意到每次操作 $(i,j)$,影响到的点 $(x,y)$ 均要满足 $x>i$,那么我们每次就必须要按照从上往下的顺序进行,否则上面的点无法影响到,即从第一行开始操作。 ......
题解 Cascade Matrix 1864D 1864

CF1864B Swap and Reverse 题解

注意到交换操作,无法改变下标的奇偶性,因此只能通过考虑翻转操作改变。注意到如果 $i$ 是奇数,那么要令 $i+k-1$ 为偶数的话 $k$ 必须为偶数,若 $i$ 是偶数,要令 $i+k-1$ 是奇数的话,$k$ 也应为偶数,而 $k$ 为奇数的情况翻转了也无法改变奇偶性。 因此通过 $k$ 的奇 ......
题解 Reverse 1864B 1864 Swap

CF1862E Kolya and Movie Theatre 题解

先注意到我们娱乐值损耗的多少只与最后一场电影有关系,所以假设最后一场电影看的下标为 $k$,那么最后就要减去 $d \times k$。 得出这个性质之后开个小根堆反悔贪心即可,首先 $a_i0$ 的,如果还没到 $m$ 场电影,我们就直接往里塞就可以,如果到了,我们就进行反悔操作,取出已选的贡献最 ......
题解 Theatre 1862E Kolya Movie

CF1839C Insert Zero and Invert Prefix 题解

首先考虑无解的情况,很明显 $a_n$ 必须为 $0$,否则没有解,因为如果最后一位为 $1$ 那么必须有 $n$ 这个数存在于 $b$ 序列中,而这种情况时不符合题意的。 然后考虑如何求解,先考虑一种比较特殊的情况,就是若干个 $1$ 后面接着一个 $0$,这里假设 $1$ 的数量有 $k$ 个, ......
题解 Insert Invert Prefix 1839C

[CF1518D] XOR Counting

[XOR Counting](https://www.luogu.com.cn/problem/CF1815D) 由于 a 可以为非负整数并且不关心 a 的具体数值,所以 m 大了后填很多 0 即可。 分类讨论。 m=1 时直接输出 n 即可。 m>=3 时,注意到 xor 运算与加运算同奇偶,所以 ......
Counting 1518D 1518 XOR CF