摘要: emmm.......随机化。 好吧,我们不熟。 考虑随机选取两组数据高斯消元消除结果后带入检验,能有超过1/2正确就输出。 其实方程就四个,手动解都没问题。 只是要注意看sin与cos的关系来确定角象限,被这个卡掉了,挑了好久。 还要注意在合适的情况下$eps$越大越好。 Code #includ 阅读全文
posted @ 2021-08-07 19:11 Geek_kay 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 考场$AC$,还是很开心的。 考虑这题让你干啥,就是给你一堆素数,然后让你用他们去构造数,求其中第$k$小的。 我们可以用系数累乘的方式,同时利用小根堆实现有序,加一个优化,就过了。 首先将所有已有的素数丢进堆,然后每次取堆顶,取出来后扫描给出的素数,将它与这些素数的积丢进堆,重复过程直到有$k$个 阅读全文
posted @ 2021-08-07 19:06 Geek_kay 阅读(247) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-06 20:00 Geek_kay 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 考虑一个数要么在左边构成顺序列,要么在右边构成逆序列。 两者的代价是他与他左边的数构成的逆序对个数以及他与他右边的数所构成的顺序对数。 两者取最小值。 累加。 输出。 AC。。。。。。 为什么我考场上没有想到啊。。。。。。。。。FAF。 代码 #include<bits/stdc++.h> usin 阅读全文
posted @ 2021-08-06 19:35 Geek_kay 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 思路清奇的一道数据结构题。 首先忽略字典序要求,贪心出一个最大得分。 然后用权值线段树维护这个得分,具体的说,就是在保证最大得分的基础上,调整字典序最大。 首先,我们将所有的$a、b$值都丢进一棵权值线段树,这样,两种值就可以互相沟通了。 在线段树向上递归的过程中维护当前区间的贡献,以及在计算贡献后 阅读全文
posted @ 2021-08-06 16:40 Geek_kay 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 考虑一个问题:任意两个点的$LCA$要么是他们的某个祖先,要么是其中某个点。 那么可以分类讨论。 其实可以发现,当某个点被改为黑色后,他的所有祖先对除了他所在的子树的节点的贡献只需计算一遍,就是说,如果之前某个祖先已经对另外的子树的节点取过$max$了,意思就是说他已经作为可能的$LCA$对他们贡献 阅读全文
posted @ 2021-08-03 21:07 Geek_kay 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 可以发现,在取模意义下二次函数的值具有周期性。 证明: 在modD意义下,二次函数的值不会超过D,那么,当序列长度超过D时,根据抽屉原理,一定会有某个数出现了两次,由此出现循环节。 证毕 那么可以考虑寻找前面那一段不是完整的循环节的序列加上由$t$段循环节构成的序列的序列。 从那里面找出一段最长不下 阅读全文
posted @ 2021-08-03 18:37 Geek_kay 阅读(68) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-02 15:10 Geek_kay 阅读(0) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-02 15:02 Geek_kay 阅读(0) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-02 07:18 Geek_kay 阅读(0) 评论(0) 推荐(0) 编辑