学习总结

发布时间 2023-04-27 16:20:30作者: luqyou

题目分析

1001

提交情况:1A

解决方法:\(÷2\)\(-x\) 选一个减的少的减就可以了。

1002

提交情况:2A

\(1st\):没出示数据范围,直接模拟 TLE。

解决方法:考虑到每次修改至多影响 \(1\) 位的匹配情况,所以一开始将所有不匹配的地方放进一个 set 里面,每次修改字符在 set 中 insert 或 erase,如果 set 为空即是回文串。

1003

提交情况:5A

\(1st - 4th\) 贪心挂了。

解决方法:贪心。

1004

提交情况:1WA

\(1st\):不会写,乱搞。

1005

提交情况:4A

\(1st - 3rd\):套公式,然后细节太多了导致 WA

解决方法:模拟。

1006

提交情况:2A

\(1st\):错误的贪心策略。

解决方法:贪心。

1007

提交情况:11A

\(1st - 10th\):想不出来,骗分找规律 (输出 0/1)。

解决方法:发现输出 \(1\)\(60pts\),输出 \(0\)\(40pts\),于是猜测答案只有 \(0/1\) 两种,考虑何时为 \(0\),不难发现只有排列按照 \(n-1\) 顺序排列时才是 \(0\),其他情况输出 \(1\) 即可。

1008

提交情况:5A

\(1th - 3rd\):贪心,然后发现不好贪心。

\(4th\):背包挂掉。

解决方法:背包+区间dp。

1009

提交情况:1A

解决方法:枚举因数。注意判质数的情况即可,同时注意只要枚举到 \(\sqrt{n}\) 即可,不然会超时。

1010

提交情况:1A

解决方法:直接按照题意模拟。

1011

提交情况:1A

解决方法:将所有数 \(-1\) 变为区间和 \(=0\) 的形式,然后滚前缀和。此时的合法区间有两种可能:

  • 区间 \([1,r]\)。此时可以直接通过 \(s_r\) 判断。
  • 区间 \([l,r](l \neq 1)\)。此时我们开一个 map,记录一下与当前 \(s\) 相同的有几个,有几个就代表前面有几个区间可以通过区间相减的方式得到区间和为 \(0\) 的区间。

这两种情况加起来即可。

1012

提交情况:11A

\(1st - 9th\):问 xl 经过传送门是不是一定要用,xl 说一定要用,然后问 AC 掉的 wsy,他说不一定要用。

\(10th\):过传送门没打标记。

解决方法:bfs。

1013

提交情况:9A

\(1st\):贪心。

\(2nd - 8th\):输入顺序错了。

解决方法:二分。

1014

提交情况:1A

解决方法:区间 dp。

1015

提交情况:1A

解决方法:将所有数 \(\mod m\),然后取 \(\mod m\)\(\mod 2m\) 最大的就可以了。

1016

提交情况:5A

\(1st - 4th\)\(n,q\) 打反。

解决方法:二叉树基本性质。

1017

提交情况:18A

\(1st - 18th\):选 \(1\) 情况数算成了 \(\dfrac{n\times(n-1)}{2}\)(正确的应该是 \(2^n\))。

解决方法:线性筛 + 组合数学。

1018

提交情况:3A

\(1st - 2nd\):乱搞。

解决方法:乱搞。

1019

提交情况:2A

\(1st\):没开 long long。

解决方法:从一个店去往下一个店有两种方法:一种是使用 \(m\) 个店中的传送门,一种是直接走,所以答案就是 \(\sum\limits^{n-1}\limits_{i=1} \min(\min\limits^{m}\limits_{j=1} dis(i,j),dis(i,i+1))\)

1020

提交情况:0

均分纸牌原题。

1021

提交情况:1A

解决方法:组合数学。

总结

  • 后面三场比赛是IOI赛制的,如果是OI赛制,会取得什么样的成绩? ans:R2 66+10+0+20,R3 100+100+100+0+20+100+100,R4 0+10+0+0+100(状态太差了)
  • 读完第一遍题思考出的解答方法一定是对的吗?比如质数数量这个题,赛场上考到了,大样例始终过不了应该怎么调整? ans:显然不一定是对的,如果发现自己始终都过不了,应该重读题目,检查自己的思路有哪些问题。
  • 哪些错误是常犯的,需要重视的? ans:细节性错误(如输入顺序,变量名),没开 long long,问题复杂化。
  • 自己擅长哪方面,哪方面需要加强? ans:擅长乱搞,需要加强对算法的敏感性以及思维能力、一遍做对的能力。
  • 开题的顺序一定是从第一道到最后一道吗?比赛时你最好的状态一定不是最后一个小时,如果你前期把精力都耗在了一道拿不了很多分的题真的划得来吗? ans:赛时应该先看一遍题目,从自己觉得最简单的题目下手,同时制定一个时间界限,如果没写出来就赶紧换题。
  • 哪些方法可以增加 AC 率? ans:交之前静态查错,检查 long long 等细节性问题。多用几组手造数据 hack 一下。