该文被密码保护。 阅读全文
摘要:
Day 0 7:30 起的比较早,和同学xjt约好了一起写作业,起来之后感觉身上有点冷,之前考CSP的时候就有点感冒,所以决定洗个热水澡,出来就写作业了。 9:30 学习状态还可以,比较沉浸式,这个时候就收拾收拾准备出发了,带了一大堆书(伏笔) 11:20 这个时候刚刚上车,火车太闷了,差评,导致正 阅读全文
摘要:
link 好题,考虑如何设定状态。 设\(dp_{i,0/1}\)表示到了第\(i\)行走完后停在这一行的最左侧/最右侧。 设定\(l_i\)表示这一行该线段的最左侧,\(r_i\)表示这一行的最右侧。 思考如何转移。 1.当我处在这一行的最左侧时,我需要从这一行的右端点转移过来,所以你的贡献要加上 阅读全文
摘要:
A 这题是很有意思的一个题,思路就是你考虑kt的位置只可能在四个角,因为这种情况下,他的距离才会最远对吧,所以你就暴力找另一个人fengwu的点的位置,然后计算他们之间的距离然后你求一个\(\max\)即可,然后记录一下这些\(\max\)的值,最后排个序就好了。 代码: # include <bi 阅读全文
该文被密码保护。 阅读全文
摘要:
A 典,属于显而易见的水题,这数据范围直接暴力做就行了。 # include <bits/stdc++.h> using namespace std; int main (){ int n; cin >> n; string s; cin >> s; int cnt = 0; if(n < 2) r 阅读全文
摘要:
A 你考虑 可以把这个数组当中的每个数表示成另一种形式:\(a_i = k_i\times x+b\)(其中\(x\)是模数,\(b\)为余数)。 对于求两个数是否对于某个余数同余,显然你要判断他们两个的差,即\(a_i-a_j\),那么我们用上面那种形式表示其实就是\(a_i-a_j = (k_i 阅读全文
摘要:
A 恶心恶心恶心,赛时写了一个二分+线段树的复杂度错了,当时yzh和lyz就一会骗我一会说实话的,搞得很懵,自己水平也是菜,那线段树分析复杂度怎么不把递归次数乘上呢?大傻逼grz 思路其实还挺好的。 你考虑很容易就发现一个性质,如果一个区间内存在两个数互质的话,这个区间的\(gcd\)肯定是\(1\ 阅读全文
摘要:
A 一道映射(下文有可能会说成置换)好题,题面描述太恶心,纯纯傻逼阅读理解。 首先很容易发现后几种操作都是对数列的后两个数进行辗转相减法,所以如果一开始给的后两个数和当前数列的后两个数的\(gcd\)不相同,就不可能。 接着考虑,你至少要执行一次的第一个操作(题面规定也),我们从循环节的角度进行考虑 阅读全文
该文被密码保护。 阅读全文