LYDSY模拟赛day1 Walk】的更多相关文章

/* 依旧考虑新增 2^20 个点. i 只需要向 i 去掉某一位的 1 的点连边. 这样一来图的边数就被压缩到了 20 · 2^20 + 2n + m,然后 BFS 求出 1 到每个点的最短路即可. 时间复杂度 O(20 · 2^20 + n + m) */ #include<cstdio> ,M=; int n,m,i,x,y,cnt,g0[N],g1[N],v[M],nxt[M],ed,h,t,q[N],d[N]; void add(int*g,int x,int y){v[++ed]=…
/* 暴力枚举两个后缀,计算最长能匹配多少前缀. 最优策略一定是贪心改掉前 k 个失配的字符. 时间复杂度 O(n3). */ #include<cstdio> ],b[]; int main(){ freopen("master.in","r",stdin);freopen("master.out","w",stdout); scanf(,b+); ;i<=n;i++);j<=n;j++) ;x<…
/* 假设路径是 a − b − c − d,考虑枚举中间这条边 b − c,计 算有多少可行的 a 和 d. 设 degx 表示点 x 的度数,那么边 b − c 对答案的贡献为 (degb − 1)(degc − 1)− 经过 b − c 这条边的三元环个数. 计算三元环的个数只需要枚举除 b; c 之外的另一个点即可. 位运算优化 */ #include<cstdio> ; ],m,n,i,j,d[N];char g[N][N];long long ans; ]+cnt[x&];…
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的讲学计划 题解:刚开始理解题意理解了好半天,然后发现好像就是tarjan之后求个最长链? 然后题目规定了从1出发,那么就只将scc[1]放入初始队列. 然后只有10分... 后来我发现了这样的情况:因为只有scc[1]放入了队列,所以其它入度为0的并没有被放入队列,这使得一些点的inp无法减到0,以致无法更新答案 然后我就先从scc[1]dfs了一…
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的Au%20Plan 题解:看了题之后觉得肯定是DP+优化,因为昨天刚水了一道线段树优化DP的题,所以又想到线段树上去了... 具体做法: 我维护了一个单调递增的f,显然若i<j并且f[i]>f[j],那么f[j]就可以不用 然后我们要找寻>=a[i]的就是连续的一段了,就可以用线段树来查询f[j]-s[j]的最大值了 然后 n*logn 水…
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的新书 题解:看到这题就想到了 poetize 的封印之门,然后就用差分序列水过了...不过把线段排序也可以一遍扫出来? 代码: #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring> #include<algorithm&g…
A.数三角形 题目:http://www.contesthunter.org/contest/CH%20Round%20%2348%20-%20Streaming%20%233%20(NOIP模拟赛Day1)/数三角形 题解:暴力枚举三元组,判断是否共线即可,用叉积 代码: type cp=record x,y:double; end; ..] of cp; i,j,k,n,ans:longint; function cross(a,b,c:cp):double; begin cross:=(b…
A.珠 题目:http://ch.ezoj.tk/contest/CH%20Round%20%2354%20-%20Streaming%20%235%20(NOIP模拟赛Day1)/珠 题解:sb题,把原串复制一边接到后面然后来回扫两遍即可. sb题还不能A,我是大sb,数组开小+只扫一遍=90 幸亏出题人数据良心T_T 代码: #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring&…
山东多校联合模拟赛 day1 题不难 rect [问题描述] 给出圆周上的 N 个点, 请你计算出以这些点中的任意四个为四个角,能构成多少个矩形. 点的坐标是这样描述的, 给定一个数组 v[1..N], 假设圆心为(0, 0), 圆的周长 C=∑v[1..N] , 第一个点坐标为(0, C/(2π)). 从第一个点开始, 顺时针沿圆周走 v1 个单位长度,此时坐标为第二个点的坐标,再走 v2 个单位长度,此时为第三个点的坐标,当走完 v1, v2..vi个距离后,为第 i+1 个点的坐标(全过程…
[考完试不想说话系列] 他们都会做呢QAQ 我毛线也不会呢QAQ 悲伤ING 考试问题: 1.感觉不是很清醒,有点困╯﹏╰ 2.为啥总不按照计划来!!! 3.脑洞在哪里 4.把模拟赛当作真正的比赛,紧张起来!!! 好了不扯淡了... -------------------------------------------------------------------------------------------------------------------------------------…