2020-team2-016

从 Trac 迁移的文章

这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。

原文章内容如下:

[/wiki/2020-team2 返回]

[[Image(Rank.jpg,1000px)]]

[[Image(Submissions.png,200px)]]

= 概述 =

 solved: 9/12

 rank: 6

= 流水账 =

开场yyc开出了A,大家一致决定丢给pb。签了一会了,看榜发现K可做,于是cxt读完题上机写K,'''K1Y14'''。写完后pb又写A过了样例,cxt将其改成了lowerbound写法,然后过A,'''A1Y36'''
,(过程是什么样的呀)'''I1Y46'''。yyc告诉pb E的结论,pb上机写E,'''E2Y56''',看到榜上有B,cxt和yyc交流了一下,发现是个线段树+set,cxt上机'''B1Y69'''。

pb问了yycF的题意,发现前几天做过类似的题,提出一个做法后上机,提交后返回WA,这是榜上有C和G,cxt读G,发现G是一个只需要一个结论就能写的普通的dp,'''G1Y140''',yyc读C,发现C是个签到题,字典树搞搞就行'''C1Y156'''。

pb尝试fixF的做法,结果情况越来越多,最后换了一个更简洁的做法,'''F4Y202'''。之后cxt开出D,yyc上机写H,但是由于一些bug和corner case卡了很久,又由于不能打印只能在机上调试或者在cxt写D时看一部分代码,'''H6Y283''',也导致了D没有成功提交。

= 总结 =

=== pb: ===
前期其实打得还可以的这一场,但是F卡了有些久确实不应该。确实思维深度和代码难度是成反比的,没有仔细想好久上机写出来的东西,要打的补丁会很多,但是仔细思考一下其实找一组特殊解带入的做法还是很简单的。

总是自诩自己的优点之一是coding,但是总是写的很快从而写出一些低级错误,导致会浪费机时来调试。

还有一个问题是没有做出L,赛后看了题解,自己其实已经想完前一半了,但是后一半的处理确实比较巧妙,但是是类似于快排等经典算法的,并没有超出我的知识范围,过早的放弃了L也是失误之一吧。

=== Creatix: ===

本来一直很生气为什么没有给我留时间写D,后来发现其实自己当时确实也没有想清楚D的做法。

出现共线的情况之后会有一些需要特别处理的地方。

也不是不能救,但是确实还要多花一点时间。

看来因为我的能力问题,离多一道题目还是有点距离的。

另外我发现我们三个人在解题习惯上还是有挺多差异的。

我发现自己最近经常喷队友证明不严谨。

但是实际上我自己也做不到绝对的严谨吧,比如你看这个D。

个人当然希望队友能稳一点,多几次1A,但是实际上谁不想呢?

我应该做的还是在现有局面下利用巧妙地合作来尽可能最大化全队收益,而不是推卸责任。

另一方面,希望将来多多练习提升自己,多多训练磨合队友。

=== yyc: ===

前期由于A首先开出来而先写了A,导致整个前期的罚时都被压了一截,中期由于卡F的原因导致C和G做出的时间也比较晚了,后期虽然开出了D,但由于H卡了太久也没太多时间调试了。

首先对于H的卡题是我背锅,一部分是读题问题,由于前几场的几何过于友善没有什么corner case导致有些想当然了,这是个很不应该出现的问题,还有就是代码能力的问题那就是自己菜,只能多写几何多积累。

其次是机时估计的问题,这场比赛出现了很多估计时间与实际使用时间不符的情况(虽然一些题是由于不能机下调试而只能在机上,导致花费了大量的机时,而调试的时间确实是很难估计的),在训练中这种现象也有所体现。

目前队伍的主要问题就是怎样平稳地渡过前中期,为最后的决胜留足时间,也就是更高效的利用机时以及少犯错,两个字:'''多 练'''。

= 题解 =

 * A:模拟

 * B:线段树+set

 * C:Trie

 * D:枚举两个点,稍微扰动一下,可以枚举到所有情况

 * E:主席树求第k大

 * F:枚举两维,尝试(±10000,±10000)和两条直线在边界上的交点

 * G:结论+dp

 * H:线段交和并,用差分处理,注意corner case

 * I:答案就是环长最大值

 * J:

 * K:签到

 * L:二分,排序成表格,在表格中合法范围内随机一个作为判断值,期望复杂度log

[/wiki/2020-team2 返回]

概述

solved: 9/12

rank: 6

流水账

开场yyc开出了A,大家一致决定丢给pb。签了一会了,看榜发现K可做,于是cxt读完题上机写K,K1Y14。写完后pb又写A过了样例,cxt将其改成了lowerbound写法,然后过A,A1Y36

,(过程是什么样的呀)I1Y46。yyc告诉pb E的结论,pb上机写E,E2Y56,看到榜上有B,cxt和yyc交流了一下,发现是个线段树+set,cxt上机B1Y69

pb问了yycF的题意,发现前几天做过类似的题,提出一个做法后上机,提交后返回WA,这是榜上有C和G,cxt读G,发现G是一个只需要一个结论就能写的普通的dp,G1Y140,yyc读C,发现C是个签到题,字典树搞搞就行C1Y156

pb尝试fixF的做法,结果情况越来越多,最后换了一个更简洁的做法,F4Y202。之后cxt开出D,yyc上机写H,但是由于一些bug和corner case卡了很久,又由于不能打印只能在机上调试或者在cxt写D时看一部分代码,H6Y283,也导致了D没有成功提交。

总结

pb:

前期其实打得还可以的这一场,但是F卡了有些久确实不应该。确实思维深度和代码难度是成反比的,没有仔细想好久上机写出来的东西,要打的补丁会很多,但是仔细思考一下其实找一组特殊解带入的做法还是很简单的。

总是自诩自己的优点之一是coding,但是总是写的很快从而写出一些低级错误,导致会浪费机时来调试。

还有一个问题是没有做出L,赛后看了题解,自己其实已经想完前一半了,但是后一半的处理确实比较巧妙,但是是类似于快排等经典算法的,并没有超出我的知识范围,过早的放弃了L也是失误之一吧。

Creatix:

本来一直很生气为什么没有给我留时间写D,后来发现其实自己当时确实也没有想清楚D的做法。

出现共线的情况之后会有一些需要特别处理的地方。

也不是不能救,但是确实还要多花一点时间。

看来因为我的能力问题,离多一道题目还是有点距离的。

另外我发现我们三个人在解题习惯上还是有挺多差异的。

我发现自己最近经常喷队友证明不严谨。

但是实际上我自己也做不到绝对的严谨吧,比如你看这个D。

个人当然希望队友能稳一点,多几次1A,但是实际上谁不想呢?

我应该做的还是在现有局面下利用巧妙地合作来尽可能最大化全队收益,而不是推卸责任。

另一方面,希望将来多多练习提升自己,多多训练磨合队友。

yyc:

前期由于A首先开出来而先写了A,导致整个前期的罚时都被压了一截,中期由于卡F的原因导致C和G做出的时间也比较晚了,后期虽然开出了D,但由于H卡了太久也没太多时间调试了。

首先对于H的卡题是我背锅,一部分是读题问题,由于前几场的几何过于友善没有什么corner case导致有些想当然了,这是个很不应该出现的问题,还有就是代码能力的问题那就是自己菜,只能多写几何多积累。

其次是机时估计的问题,这场比赛出现了很多估计时间与实际使用时间不符的情况(虽然一些题是由于不能机下调试而只能在机上,导致花费了大量的机时,而调试的时间确实是很难估计的),在训练中这种现象也有所体现。

目前队伍的主要问题就是怎样平稳地渡过前中期,为最后的决胜留足时间,也就是更高效的利用机时以及少犯错,两个字:多 练

题解

  • A:模拟
  • B:线段树+set
  • C:Trie
  • D:枚举两个点,稍微扰动一下,可以枚举到所有情况
  • E:主席树求第k大
  • F:枚举两维,尝试(±10000,±10000)和两条直线在边界上的交点
  • G:结论+dp
  • H:线段交和并,用差分处理,注意corner case
  • I:答案就是环长最大值
  • J:
  • K:签到
  • L:二分,排序成表格,在表格中合法范围内随机一个作为判断值,期望复杂度log
附加文件