Codeforces Round #580 (Div. 1) A-E
A
Tag:构造
将$a_i$看做一个无穷数列,$i > 2n$时$a_i = a_{i - 2n}$.设$sgn_i = \sum\limits_{j=i+1}^{i+n}a_i - \sum\limits_{j=i}^{i+n-1}a_i = a_{i+n} - a_i$,那么答案要满足:$\forall j \leq k , \sum\limits_{p=j}^k sgn_p \in [-1,1]$.且$\forall i , sgn_i \neq 0$.
上述条件等价于$i>1$时$sgn_i = -sgn_{i-1}$.因为$sgn_{n + 1} = sgn_1$,所以当$2 \mid n$的时候会出现$sgn_{n+1}=0$的矛盾,即无解;只有当$2 \not\mid n$的时候可以通过$sgn$构造一组合法解.
B
Tag:位运算、 最小环
当某种数位出现了至少$3$次时答案为$3$,否则考虑一个图,图上每一个点表示一个位置,将具有相同数位的位置之间连边,图上至多只有$60$条边.使用bfs/Floyd求最小环即可(一定注意不要用dfs树求最小环).
C
Tag:构造、交互
询问满足条件的曼哈顿距离为$2$的两个位置可以询问出这两个位置是否相同,那么我们可以通过类似并查集的方式,通过$n^2-2$次询问出所有横纵坐标之和为偶数的位置的值和所有横纵坐标之和为奇数的位置两两之间是否相同.
接下来考虑使用一次询问询问出某一个横纵坐标之和为奇数的位置的值.考虑最简单的:考虑找到两个曼哈顿距离为$4$的可询问位置$(x_1,y_1),(x_2,y_2)$,如果当$arr_{1,2}=0$和$arr_{1,2}=1$返回值不同(这个东西可以自己写一个模拟进行计算),就对$(x_1,y_1),(x_2,y_2)$进行询问,就可以得到$arr_{1,2}$的值,进一步得到所有的值.
所以仍然不知道为什么一定会存在这样的$(x_1,y_1),(x_2,y_2)$...
D
Tag:构造
首先,给定一棵$n$个点有根树和集合$A = \{a_1,a_2,...,a_{n-1}\}$,一定存在一个给边非负权值的方案使得其他$n-1$个点到达根的距离构成的集合$=A$.构造方式:设$solve(x , S)$表示在做$x$的子树,且子树内的点到子树根的距离为集合$S$.设它的所有儿子为$a_1,a_2,...,a_p$,它们的子树大小为$x_1,x_2,...,x_p$,则把集合$S$分成$S_1,S_2,...,S_p$满足$|S_i| = x_i$,对于每一个$i$令$w_{x,a_i} = \min\{S_i\}$,将所有$p \in S_i \rightarrow p - \min\{S_i\}$然后递归进入$solve(a_i , S_i)$即可.
那么考虑如果存在一个点$x$使得$x$的子树可以分为两个部分,满足这两个部分的$size+1$的乘积$\geq \lceil \frac{2n^2}{9} \rceil$,就可以直接构造出一组合法方案了.
那么考虑重心.因为重心满足任一儿子的子树大小$\leq \frac{n}{2}$,所以考虑每次将最小的两个子树合并,直到剩下两个子树,那么两个子树的大小定$\geq \lceil \frac{n - 1}{3} \rceil$.不难证明两棵子树的$size+1$的乘积$\geq \lceil \frac{2n^2}{9} \rceil$,这样就可以构造方案了.
E
Tag:期望、莫比乌斯反演
设$f_i(s) = [s_{1,i} = s_{n-i+1 , n}]$,则我们要求$E((\sum f_i(s))^2) = \sum\limits_i E(f_i^2(s)) + \sum\limits_{i \neq j} E(\sum f_i(s) f_j(s))$
第一部分:$E(f_i^2(s)) = E(f_i(s)) = k^{-i}$,原因是对于$\forall p \in [n-i+1,n]$需要满足$s_p = s_{p - (n-i)}$,每一个都有$\frac{1}{k}$的概率发生,而其余没有要求.
第二部分:$E(f_i(s)f_j(s)) = k^{\max\{n-i+n-j-n , \gcd(n-i,n-j) \}-n}$.证明如下:
先考虑当$f_i(s) = 1$,原串有一个长度为$n-i$的周期.那么原串有多个周期时,考虑将由于周期性必须相等的两个字符之间连边,如果形成了$t$个连通块,则这一部分的期望就是$k^{t-n}$.
当$n-i+n-j \leq n$的时候由众所周知的定理可以得到原串有一个$\gcd(n-i,n-j)$的周期,所以期望为$k^{\gcd(n-i,n-j)-n}$.
当$n-i+n-j > n$,设$i$$
对于$\equiv x \mod \gcd(n-i,n-j)$的所有数必须要满足这些点都连了一条边才能存在一条边连在一个连通块内.因为连了$j$条边,所以如果$(n-i) - j = (n-i) + (n-j) - n \geq \gcd(n-i,n-j)$,那么不可能存在这样的$x$,也就是有$(n-i)+(n-j)-n$个连通块;否则会有$\gcd(n-i,n-j) - ((n-i) + (n-j) - n)$条边连在同一个连通块内,也就是有$\gcd(n-i,n-j)$个连通块.
这样上述定理得证.注意到$E(f_i^2(s)) = k^{\max\{n-i+n-i-n , \gcd(n-i,n-i) \}-n}$,可变为计算$\sum\limits_{i,j \in [1,n-1],d = \gcd(i,j)}([i+j-n \geq d]k^{i+j-2n} + [i+j-n
$\sum\limits_{d \in [1,n-1]} \sum\limits_{p \in [1, \frac{n-1}{d}]} \mu(p) \sum\limits_{i,j \in [1,\frac{n-1}{dp}]}([i+j > \frac{n+d-1}{dp}]k^{dp(i+j)-2n}+[i+j \leq \frac{n+d-1}{dp}] k^{d-n})$
枚举$dp$,后缀和预处理$f_x = \sum\limits_{q=x}^{\frac{2n-2}{dp}} k^{dpq-2n} \sum\limits_{i,j \in [1,n-1] , i + j = q}1$,然后枚举$d$就可以$O(1)$算答案.复杂度$O(nlogn)$.
Codeforces Round #580 (Div. 1) A-E的更多相关文章
- Codeforces Round #580 (Div. 1)
Codeforces Round #580 (Div. 1) https://codeforces.com/contest/1205 A. Almost Equal 随便构造一下吧...太水了不说了, ...
- Codeforces Round #580 (Div. 2)
这次比上次多A了一道,但做得太慢,rating还是降了. Problem A Choose Two Numbers 题意:给出两个集合A,B,从A,B中分别选出元素a,b使得a+b既不属于集合A,又不 ...
- Codeforces Round #580 (Div. 2)D(思维,Floyd暴力最小环)
#define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;const int maxn=300;cons ...
- Codeforces Round #580 (Div. 2)-D. Shortest Cycle(思维建图+dfs找最小环)
You are given nn integer numbers a1,a2,…,ana1,a2,…,an. Consider graph on nn nodes, in which nodes ii ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
- Codeforces Round #279 (Div. 2) ABCDE
Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems # Name A Team Olympiad standard input/outpu ...
随机推荐
- 启动hadoop报does not contain a valid host:port authority:node2_1:9000
报错:启动hadoop报does not contain a valid host:port authority:node2_1:9000 原因:主机的hostname不合法,修改为不包含着‘.’ ' ...
- TensorFlow安装笔记(CPU版)
新电脑配环境又出了问题. 先是装了最新版anaconda,python3.7的版本.——2019.10.21 然后conda install TensorFlow,conda install kera ...
- Ubuntu 19.04 国内更新源
2019年4月18日, Ubuntu 19.04 正式发布. Ubuntu 19.04 的 Codename 是"disco(迪斯科舞厅)": zkf@ubuntu:~$ lsb_ ...
- Pandas学习整理与实践
Part 1. Pandas初识 作为一款数据处理工具,Pandas本身集成了Numpy(数据计算处理)及matplotlib(绘图),其便捷的数据处理能力.方便的文件读写以及支持多维度的表示方式使其 ...
- Java finally未被执行的情况
一种是先执行了用于终止程序的System.exit()方法,或进程被关闭 还有一种情况是,当前线程一直在执行,在一些业务逻辑里面跳不出来,看上去就像finally一直未被执行 线程被终止的时候也会执行 ...
- Linux文件系统被占用,磁盘使用量与实际不一致【转】
用lsof检查后才发现原因是,有文件被删除,而进程还活着,因而造成还占用空间的现象 [root@/]# lsof |grep delete 根据lsof列出的进程号,kill这些进程后,空间就释放出来 ...
- 019 spring social
1.原理 2. 3. 4.
- 基于webpack4的react开发环境配置
一.基础配置 1.init项目 mkdir react-webpack4-cook cd react-webpack4-cook mkdir src mkdir dist npm init -y 复制 ...
- SAGAN:Self-Attention Generative Adversarial Networks - 1 - 论文学习
Abstract 在这篇论文中,我们提出了自注意生成对抗网络(SAGAN),它是用于图像生成任务的允许注意力驱动的.长距离依赖的建模.传统的卷积GANs只根据低分辨率图上的空间局部点生成高分辨率细节. ...
- Chrome禁用software_reporter_tool
今天开机后,从几分钟到半个小时之间,感觉机器反应有些慢,发现CPU占用80-90%.查看任务管理器, 有一个 software_reporter_tool.exe 的程序占用了一半的CPU使用率. 转 ...