排名:970
AC:4 / 6
按题意模拟即可
从左往右飞一次,从右往左飞一次,做个前缀和和后缀和
然后若 \(s_i<t_i\),输出前缀和之差,否则输出后缀和之差
一种显然可行的构造方式是先计算 ?
里有多少个左括号,多少个右括号,然后前面全填左括号,后面全填右括号。
那么为了避免这种情况,我们希望存在右括号越左越好,然后就可以打一个后悔贪心。
假如遇到 ?
我们直接填 )
,如果当前右括号数量大于左括号数量,我们就把已经填了中最右边填了右括号的问号改成左括号,最后判断即可。
假如走得通,他们的行差与列差必然都是 \(k\) 的倍数。
那么中间有障碍物怎么办?为了避开障碍物,题目没有要求求最小步数,我们就可以先让它向上走到可以到达的最高位置。
如何判断中间是否有柱子高过最高位置?RMQ即可。
打得非常不爽的一场比赛。
垃圾电脑来月经,半死机,鼠标移动能卡成ppt,重启几次都还是一样,打代码显示速度和我打字速度慢10秒,编译一次需要3分钟。
还好的是今天前4题不难,顶多是C有点意思,而且代码都很短。如果不是因为这个垃圾电脑,我甚至能上candidaten master(前提是我手速够快)
打A题时还没出事,就是看题慢了,5min时过
B电脑开始挂,一直挂挂挂挂挂,重启了2次,千辛万苦,27min时过
C初看推了好久,推不出,跑去看D
D看完之后发现就是条模板题,果断打了,调的过程贼痛苦。后来想起cf提交在第一个点不扣分,就直接提交,不测样例了(虽然浏览器也很卡,但比编译器好)89min过
回去看C,想起前几天那场IQ题,然后想到后悔贪心,93min时过