2020-team8-1216
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
[[Image(Standings.png,1000px)]]
[[Image(Submissions.png,1000px)]]
== 流水账 ==
Ebola不在,看到ljm在机房摸鱼零时把他叫来打打,一开始很顺利地过了5个签到题,ljm出了B,写完后交上去Wa了,然后Szy对着ljm的程序想了好久,找到了错误,讨论了一会改了改,再交A了,在这期间Szy和cy想出了C和H,一开始cy写C,后来觉得C细节太多改写H,szy机下想J,可惜差了一步没想出来,cy299min过了H.
== 个人总结 ==
Szy:总的来说挺好,寒假可以抓紧时间多写题减轻cy代码压力
== 题解 ==
A:签到题
B:考虑要么尽快干死A,要么尽快干死B,否则需要的血量就会变多,然后在这基础上考虑最小字典序如何调整,具体比较复杂.
C:大概考虑维护每个方向的最长移动距离,四个角会并在一起,然后同行同列最边上小于最小移动距离的也会并在一起,比较难写
D:签到题
E:
F:
G:
H:后缀自动机可以处理相同串,考虑一条边上的贡献是原串上一个区间,可以线段树上二分,也可以莫队维护单调栈,两个log/根号,莫队可能更好写一点
I:去最左和最右的人,各取一半
J:首先做一遍二维前缀和,找到被覆盖一次和两次的点,然后考虑删除一对Pair(a,b)的贡献就是a覆盖的覆盖一次的点+b覆盖的覆盖一次的点+(a,b)覆盖的覆盖两次的点,关键在于怎么找出来每个覆盖一次和覆盖两次的点被谁覆盖,覆盖一次的点:对i号矩形内全部加i,最后覆盖一次的点上的数字就是覆盖它的矩形,覆盖两次:第一次加i,第二次做加i^2,这样可以通过方程i+j=a,i^2+j^2=b解出i,j
K:
L:


流水账
Ebola不在,看到ljm在机房摸鱼零时把他叫来打打,一开始很顺利地过了5个签到题,ljm出了B,写完后交上去Wa了,然后Szy对着ljm的程序想了好久,找到了错误,讨论了一会改了改,再交A了,在这期间Szy和cy想出了C和H,一开始cy写C,后来觉得C细节太多改写H,szy机下想J,可惜差了一步没想出来,cy299min过了H.
个人总结
Szy:总的来说挺好,寒假可以抓紧时间多写题减轻cy代码压力
题解
A:签到题
B:考虑要么尽快干死A,要么尽快干死B,否则需要的血量就会变多,然后在这基础上考虑最小字典序如何调整,具体比较复杂.
C:大概考虑维护每个方向的最长移动距离,四个角会并在一起,然后同行同列最边上小于最小移动距离的也会并在一起,比较难写
D:签到题
E:
F:
G:
H:后缀自动机可以处理相同串,考虑一条边上的贡献是原串上一个区间,可以线段树上二分,也可以莫队维护单调栈,两个log/根号,莫队可能更好写一点
I:去最左和最右的人,各取一半
J:首先做一遍二维前缀和,找到被覆盖一次和两次的点,然后考虑删除一对Pair(a,b)的贡献就是a覆盖的覆盖一次的点+b覆盖的覆盖一次的点+(a,b)覆盖的覆盖两次的点,关键在于怎么找出来每个覆盖一次和覆盖两次的点被谁覆盖,覆盖一次的点:对i号矩形内全部加i,最后覆盖一次的点上的数字就是覆盖它的矩形,覆盖两次:第一次加i,第二次做加i2,这样可以通过方程i+j=a,i2+j^2=b解出i,j
K:
L:
附加文件
- Standings.png by szy12345
- Submissions.png by szy12345