题目链接
T1
今天我又在划水了,嗯,题解也水一下吧。
这题考场上我想出正解了。。。可是打挂了(就当我A了)
这题其实并不难,我们只需要维护一个前缀和,再维护从前往后的前缀和最小值,和从后往前的前缀和最小值即可。
具体看代码吧。(今天不在状态,不想写)
1 |
|
T2
这题实际上并不难,我们先考虑不加入这条神奇的边。然后跑最短路。
然后分情况讨论
从1到N的最短路有这几种情况:
- 直接从1到N,不经过$u,v$
- 路径为:$1−>u−>v−>N$
- 路径为:$1−>v−>u−>N$
然后每次考虑选择这三种情况中最小的即可。
1 |
|
T3
这算是Day4的比较简单的题目了(个人观点)。但是OJOJ上还是把这题难度硬生生标成Mid
然后其他两题难度都是Low
,莫非是我太菜了???(黑人问号.jpg)
我们来观察一下这个神奇的函数$\sum_{d|n}\varphi(d)=n$
可能一开始你无法发现出什么规律,但是做题嘛,手算肯定要先算出来啊。
于是我们开始手算
当$n=1$时,$n=f(1)=1$,所以我们得到$f(1)=1$
当$n=2$时,$n=f(1)+f(2)=2$,所以$f(2)=1$
当$n=3$时,$n=f(1)+f(3)=3$,所以$f(3)=2$
当$n=4$时,$n=f(1)+f(2)+f(4)=4$,所以$f(4)=2$
…
然后你们慢慢算吧。。。最后发现,实际上这就是欧拉函数的值。
而关于公式$\sum_{d|n}\varphi(d)=n$实际上是欧拉函数的一个性质(想要证明的同学请自行百度反正我是找规律)
然后我们只需要一个线性筛欧拉函数模板就可以过了。(话说我昨晚才刚整理了笔记啊喂)
但是
你会发现有几个数据是真的狗
第$3,8,9$个数据点就要你特判才能过去的。
这里我就不做解释了,引用一下官方题解的解释
线性筛可以得到70分
特判全是7的点可得10分
$n=5$的提答点可以通过$\sqrt N$的暴力预处理好
剩下一个点,三个数都是质数
然而我的代码跑了一个下午没有分解完
(你自己代码跑了一下午都没分解完,那我真是太阳了)
下面放代码↓
1 |
|