BIT training long round #1 summary

BIT 校赛 5h赛第一场总结

  • solved \(6/12\) , rk 9。

打烂了打烂了,罚时吃满(11 发,无敌了) 😦

流程

先在 A 题卡了半小时,年月日的数数题,自己多考虑了许多 corner case ,一直在尝试端点年份单独枚举,遗憾的是总是 T ...... 直到最后返回来才意识到合法方案很少可以先全部求出来!

B 题,手法生疏了,线段树忘开多倍空间了。这题连着挂了 4 发,都是这个原因(还以为被卡常了)!

C 题为什么卡 string 啊。

I 也是没开够空间,又交了发罚时。。

最后 1h,开始刚计算几何了,太有实力了。这场比赛一直在跟着别人走,有人过了才看这道题,这就导致有些题最终没有发现也没有做出来,在策略上和实力上都有问题,还需要继续努力。

部分题解

会持续更新。

E. Easy DP Problem

把平方项去掉,手推一下式子发现就是求区间前 \(k\) 大和,用主席树做一下就行。

G. Gliding

首先,我们一定会从当前风口走到一个上升能力更大的风口处,并且我们不会预留高度,总会在 \(z=0\) 时到达下一个风口。

这里我的想法是构造 \(n^2\) 的满图跑最短路,但也有更简单的做法:

由前面的性质,我们把风口按上升能力排个序,简单 DP 即可。

\[k_1b_2-k_2b_1 > 0 \]

F. Finding a Sample

给定两个线形层,找一组向量使得二分类结果不同。

先把成比例的情况否掉,下面讨论不成比例的情况。

线性层的维数很大,难以枚举,考虑只枚举少量维数,只枚举一维时,把其他维度设成 \(0\) ,把这一维当成斜率,于是要求:

\[k_1k_2x^2+(k_1b_2+k_2b_1)x+b_1b_2<0 \]

\[\Delta = (k_1b_2-k_2b_1)^2 \]

\(k_1,k_2\) 都不为 \(0\) 时,可以发现若 \(b_1,b_2\) 不全为 \(0\) ,则必然有一个维度能求出解。若 \(k_1,k_2\) 其中一个为 \(0\) ,那变成一次函数,必然有解。否则该维度无解。

上面的求解过程建立在 \(b_1,b_2\) 不全为 \(0\) 的基础上,若 \(b_1,b_2\) 全为 \(0\) ,有时一个维度不能求出解(比如 \(1,3,0\)\(3,1,0\)

此时需要两个维度,具体的将一个维度设置为 \(1\) ,将其看成 \(b\) 就行。

还要注意许许多多的 corner case,比如 \(n=1\) 的情况,不成比例但 \(k\) 全是 \(0\) 的情况等等。

posted @ 2025-02-07 23:36  蒻蒻虫  阅读(27)  评论(0)    收藏  举报