目录在此
2021-07-08~2021-07-22总结–zhengjun
7.8
考试过程
一开始看到 A A A 题,一看就是大水题,按照题目中说的算就行了,但是中途出了点错,调试了一下,发现忘记把角度转成弧度在算三角函数了,然后就可以了。
然后看了 B B B 题,看起来特别像那个启发式合并,然后觉得好像不会做如何把小的插入大的里面,所以就打了个错误复杂的算法,交上去只有 30 30 30 分,但是在洛谷上面是过了的了,洛谷NB。
接着就看了 C C C 题,因为考试的时候没有想出一个重要的结论:答案的二进制下位数一定 ≤ 24 \le24 ≤24,于是不会做就只能输出样例拿了 10 10 10 分。
最后 D D D 题呢就不会做,直接打暴力,结果还打挂了 20 20 20 分也是无语了。
学习的算法
线段树+平衡树
其实是没学,讲了一些习题
AC的题目
正在调试的题目
7.9
考试过程
一开始看了
A
A
A 题,发现是个大水题,就直接开了
n
n
n 次根号,结果试了几个数据有一个错了,发现是精度误差,于是就怕被 lxl
卡掉,就写了二分+快速幂然后就过了。(结果 fxt
的方法就是直接开
n
n
n 次根号,我随便弄了一个数据就卡掉他了,结果他竟然
A
A
A 掉了,我真是浮雕去了)
接下来看了 B B B 题,一点思路都没有,所以就先打了一个暴力,结果突然就找到结论了,只要 n ≥ 7 n\ge7 n≥7,只要循环地输出 1 , 2 , 3 , 4 1,2,3,4 1,2,3,4 就行了。
接着就看了 C C C 题,我考试的时候想到了正解,但是怕开了 1 0 8 10^8 108 个 i n t int int 会 M L E MLE MLE,然后就没敢打,所以小数据直接暴力,大数据的话就双指针,然后发现大数据其实双指针是 O ( n ) O(n) O(n) 的,然后大概可以跑个 100 100 100 次,我就用 c l o c k ( ) clock() clock() 判了一下,把 2 s 2s 2s 跑满,然后交上去,结果后面 50 50 50 分是拿到了,但是前面的发现是求最长公共子序列有个地方 a , b a,b a,b 搞反了然后就挂了 50 50 50 分。
最后看了 D D D 题,这个其实推一下式子就能发现这个就是求树上一条链上面一个权值出现的次数,然后可离线,所以把询问读出来再 d f s dfs dfs 一遍就好了。但是考试的时候没推式子,所以就打了暴力,拿了 65 65 65 分。
学习的内容
树链剖分等树上问题
AC的题目
正在调试的题目
7.10
考试过程
A
A
A 题呢就是个
s
b
sb
sb 数学题,直接算就行了,结果不知道为什么被 lxl
卡掉
5
5
5 分,调了一个下午没调出来我就索性不调了,数据弄下来特判掉了。
然后看了 B B B 题,结果一点思路都没有,就想先暴力打表过一些小数据了,结果打表之后,我发现这个答案每一次只要出现了一种质因数,那么以后的答案一定会出现这个答案,那我就不用一个一个数地枚举了,每一次可以多加一点(比如 + = 2 × 3 × 5 × 7 × 11 × 13 +=2\times3\times5\times7\times11\times13 +=2×3×5×7×11×13 ),然后把所有的数据的表都打了出来(其实就一百多种情况),就过了这道题。
接着看了 C C C 题,发现其实可以用贪心一下,固定左端点,每次都让选的区间尽可能地长,发现有很多的冗余计算,就先预处理了一下,然后其实冗余计算还是不少,就发现了可以用倍增法过掉了,幸亏没打挂。
D
D
D 题呢,题目看错了,没有考虑边的编号对答案的影响,直接弄了一个莫队,然后发现大样例过了,就管都没管,结果怎么着?我竟然拿了
70
70
70 分。(后来想一想 lxl
可能在构造这个树的时候,对于每一个节点,在之前的节点里面选一个点拿来做父亲,然后按照顺序输出边,我的方法就是对的了!!!哈哈哈哈哈哈哈哈哈笑死我了)
写一点感受吧
我以后一定每场考试都会用快读的!!!
(今天 C C C 没用快读被卡了 50 50 50 分,淦死了)
但是啊,我还是赚了 20 20 20 分的:
(因为这道题——T184768 2021.7.10D我没有看到题目中还有边的编号的限制,于是直接只考虑点编号的限制然后套个莫队然后就骗了 70 70 70 分)
AC的题目
7.11
考试过程
首先看了
A
A
A 题,发现这个就是个大水题,由于还是怕直接解二次方程会被卡精度,所以我就用了二分,然后就没看这道题了。结果发现我有个特例没有特判掉,就被 lxl
卡了
5
5
5 分。
然后看了
B
B
B 题,发现也是个数学题,然后随便推了一下就写了一个二分也就没去管了,我料到了 lxl
会把我卡掉,果然,最后一个点
40
40
40 分,我错了其中一个测试数据就
40
40
40 分没了。但是,我没想到的是我挂掉的原因竟然是我二分右边界设置得太大了,算的时候
l
o
n
g
l
o
n
g
long\ long
long long 都炸掉了,lxl
果然毒瘤。
接着看了 C C C 题,首先想到了把仙人掌树用 t a r j a n tarjan tarjan 缩成一棵树,然后推一下式子就成功做完了,幸运的是这道题我没有打挂……
最后 D D D 题不会做,但是这个 50 50 50 分的部分分还是可以拿来的,也就这样拿了 50 50 50 分。
AC的题目
还有点东西
这是 lxl
给我们讲课的最后一天,所以讲了
C
F
CF
CF 上
3000
3000
3000 以上的数据结构题,思想是学到了,但是代码我是根本写不出来(也有可能是我我不想写)
7.12
聊点其他的
首先欢迎这个shy
老师(施老师),不愧是大佬啊啊啊,orz。
而且他讲的要比lxl
易懂很多(lxl
老师别生气,根本原因是因为您太巨了orz%%%,我只能以
3
G
3G
3G 的网速跟着您
5
G
5G
5G 的网速,不过真的,每次刚刚有一点悟了的时候lxl
老师总会像打击我们的信心一样说这么几句话:“这道题就做完了,
C
F
CF
CF
3000
3000
3000的题其实也不会很难的,也就是这么就一下子就出来了,只是因为
C
F
CF
CF 只有
2
2
2 个小时,题量有这么大,打不了多少东西。”可真就做完了,思想是懂了,但是这方法怎么想出来的,而且代码实现我也不知道,我都不知道我到底是会了还是不会了……)
考试过程
翻开来 A A A 题,我一时竟然想不出来,直接傻掉去,然后看了 B , C , D B,C,D B,C,D,真的是一题都不会。所以 B B B 打了暴力拿了 20 20 20 分, C C C 是连暴力都不会打, D D D 呢打了暴力,大数据还输出了 NO,最后拿了 25 25 25 分。
接着感觉只有 A A A 似乎有点可做性,然后推了一些结论,然后打完就过掉了。
AC的题目
7.13
考试过程
四字总结:全面崩盘
先看了 T 1 T1 T1 打了 25 25 25 分钟发现题目看错了,然后花了 15 15 15 分钟就打完了。
然后看了 T 2 T2 T2 ,可以 d p dp dp 出来,然后写了 50 50 50 分钟开始调试一直没有调出来。
略微看了看 T 3 T3 T3 ,没怎么去想,感觉没有 T 2 T2 T2 简单。
然后打了 T 4 T4 T4 的暴力就回去调 T 2 T2 T2 结果到了考试最后一秒都没有调出来。
结果考试后想了一想 T 3 , T 4 T3,T4 T3,T4 一下就想出来了
退步 32 32 32 名没谁了……
太悲哀了……
AC的题目
正在调试的题目
调了一个下午加上半个晚上都没调出来什么问题我真是服了。
7.14
考试过程
先看了
T
1
T1
T1 ,得出了结论:对于
n
=
2
n=2
n=2 的情况,特判掉,然后找
n
×
(
n
+
1
)
2
\frac{n\times(n+1)}{2}
2n×(n+1) 的最大的约数,然后如果乘起来再枚举最小的非
1
1
1 约数可能会被 shy
卡掉去(虽然到后面他也没有卡),于是我就把
n
n
n 按照奇偶性讨论一下,分成两个部分,分别计算就可以过去了。
接着看了 T 2 T2 T2 ,一看就是 d p dp dp ,还没有卡掉 O ( n 2 ) O(n^2) O(n2) ,那我才不会秀一下智商,写个什么 O ( n ) O(n) O(n) 或 O ( n log n ) O(n\log n) O(nlogn) 的算法, n 2 d p n^2\ dp n2 dp 就完事了。
然后再看了 T 3 T3 T3 ,首先显然可以把 1 ∼ n 1\sim n 1∼n 分组,分成
2 1 , 2 2 , 2 3 , … , 2 k 1 , 3 1 , 3 2 , 3 3 , … , 3 k 2 , 5 1 , 5 2 , 5 3 , … , 5 k 3 , 6 1 , 6 2 , 6 3 , … , 6 k 4 , … , i 1 , i 2 , i 3 , … , i k m , … 2^1,2^2,2^3,\dots,2^{k_1},3^1,3^2,3^3,\dots,3^{k_2},5^1,5^2,5^3,\dots,5^{k_3},6^1,6^2,6^3,\dots,6^{k_4},\dots,i^1,i^2,i^3,\dots,i^{k_m,\dots} 21,22,23,…,2k1,31,32,33,…,3k2,51,52,53,…,5k3,61,62,63,…,6k4,…,i1,i2,i3,…,ikm,…
一开始有一个地方想错了,以为又是是
d
p
dp
dp 结果发现大样没过,所以查出了错,然后我就打了个
2
n
×
n
2^n\times n
2n×n(后面还要加一个大常数),发现可以优化,就是对于每一组里面的进行这样的暴力状压枚举,然后大样例跑过去了,就过了。(就像 lxl
大神说的那样,你不需要考虑复杂度对不对,只要最大的数据不会
T
T
T ,那这个算法就是对的 orzorz,虽然那次正解是暴搜,但是我也没用暴搜过了那道题,我直接打表,然后到了后面可以优化一下,把表都打出来,发现就
100
100
100 多种情况,然后对于每个询问直接二分即可)
AC的题目
正在调试的题目
7.15
考试过程
一个词总结这场考试:半面崩盘
首先看了 A A A 题,一眼线段树模板题,然后刚打完发现自己就是一个大 s b sb sb,其实根本不用线段树,直接从前到后扫一遍就可以了,我谔谔,浪费了 20 20 20 分钟。
然后看了 B B B 好像 Q 1 Q1 Q1 可以用线段树做,觉得那个线段树没有白打,于是就过了 Q 1 Q1 Q1,可以有 80 80 80 分,但是没看到这道题是两问分开评分的,于是 T M TM TM 的调了两个多小时来搞他,最后还是没有搞出来(后来看了 s t d std std 发现我还是个 s b sb sb, Q 1 Q1 Q1 同样也不需要线段树,但是 Q 2 Q2 Q2 是需要的,所以心里还算有一点安慰, Q 2 Q2 Q2的话我发现我的线段树在向上 p u s h push push 的时候好像有个地方没有分类讨论, 19 19 19 分没了(第二问全输出 4 4 4竟然有 1 1 1 分),还浪费了两个小时,我服了)
结果花了 1 1 1 分钟看了看 C C C 题,根本来不及打,然后看了 D D D 题,想出了 d p dp dp,但是来不及打了,就打了一个 n 5 n^5 n5 暴力拿了 10 10 10 分。
太悲哀了……
通过的题目
正在调试的题目
这道题我调不出来了!!!!!不调了!!!!!!!!!!!
7.16
考试过程
AC的题目
7.17
考试过程
AC的题目
7.18
考试过程
AC的题目
7.19
考试过程
AC的题目
7.20
考试过程
AC的题目
7.21
考试过程
AC的题目
分数及排名
day | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
T1 | 100 | 100 | 95 | 90 | 100 | 100 | 100 | ||||||||
T2 | 60 | 100 | 100 | 60 | 20 | 0 | 100 | ||||||||
T3 | 10 | 50 | 60 | 100 | 0 | 0 | 100 | ||||||||
T4 | 30 | 65 | 70 | 50 | 25 | 20 | 90 | ||||||||
总 | 200 | 315 | 325 | 300 | 145 | 120 | 390 | ||||||||
rank | 20 | 6 | 6 | 5 | 4 | 36 | 2 |