2013-C04-team4

从 Trac 迁移的文章

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

原文章内容如下:

[[Image(timeline.png)]]
----
{{{
流水帐 by 李璜

上来我过掉水题A(5min 1Y),然后我们讨论了一下H题,龚源学长上去写H,我们继续读题,很快H过掉了(38min 1Y)
这期间zimpha学长想出了F题的解法,然后他上去过了F(68min 1Y),之后我们讨论K,K是一个构造题,构造方案比较简单,
但是编码需要点细心,我和龚源学长讨论了一下谁上去写,然后我去写了(107min 1Y),
到这时候发挥都比较好,在K之后另两位学长开始搞D,做法倒是没什么问题,就是可能实现的比较翔,这时候悲剧就开始了
D先交出一次wa(169min),后来修改之后又交出wa(206min),之后发现不行了,好多队都过了I,我去看了看I,
有点二维DP的想法,于是给龚源学长说了,他很快就推出式子来了,上去过了I(232min 1Y)
在搞D的期间我几次上机写了C,I过后继续写,先交出一个wa(247min),我表示不明所以,稍作修改后再交出一个wa(263min)
然后我就下来让他们继续治疗D题,之后很快发现了C题广搜是不行的,要spfa,上去改了一下就过了(274min 3Y),我太蠢了= =
最后一直在企图治疗D题,但是未获成功……
}}}
{{{
这次D题是我们的核心问题所在,我来说一下几次错误和修改的过程。
总共修正了以下几个错误:
1. 题意想错了,一开始我们把人与人相连的条件当成距离小于2R,大概在过了I题后,我们又WA了一次,我重新读题,发现了这个问题。(修改:把几个if语句的条件和
结果改一下,没用多久)
2. 分类的时候,我们认为3个点是对称的,对3个点全排列后分类讨论,后来发现,只有两个人联着(距离<=R)的时候才对称,这个错误是紧接着前面的读题错误而来的,
因为按照错误的理解下两个人一定会相连,那么确实是对称的,但重新知道真正的题意之后就不是了,而我们没有立刻想到来修正(也比较难想到)。(修改:把两人不
相连的情况单独提到最前面判,只是剪切粘贴的问题)
3. 在两个人相连,用A巫师覆盖两个点,B巫师把他接到第三个点的情况,我们用叉积判断A在哪里离第三个点最近,但是叉积没有考虑0的时候可能是共线反向。(修正:
乱测case的时候发现一个错的,之后找到了这个问题,花了很多时间)
4. 在发现错误3.后,我们把反向共线单独拿出来判掉,但是特判的if语句写错了,把普通情况也忽略掉了(结果测case也都能过)(修正:赛后我又来看这题我们的代码
,发现的这个错误,也是比赛中剩下的最后一个错误,只改正这个就1Y了。)

改进的方法:
1. 读题的时候,特别是这种很长的题目肯定要多读一遍,很多细节都藏在里面。(对于B题和G题也出现了这样的问题)
2. 读题的时候应该把关键的画下来,让队友更容易注意到,B题zimpha学长看到只能进一个坑道的条件了,但是他其他的没懂;我把其他搞懂了,就是漏了这个条件。(但
是我还是不太明白怎么实现,比赛的时候大家都随手拿题目,随手放桌上的,光一份画了别人怎么快速找到总共画了些什么?靠队友讲题吗?讲题更细心一些?)
3. 这个还是靠赛前的准备,计算几何再熟悉一些就不会犯这个错误了。(已加入错误集)  (或者学长们有没有什么更方便一些的替代方法?)
4. Debug的时候是最注重细节的时候,zimpha学长加了特判之后我只是随意瞄了一眼,感觉没什么问题,就继续看其他的了,而赛后一读才发现那里明显加错了。这个应该
是比赛的时候更小心一些,看代码不能粗粗扫一眼(特别是Debug的时候)。
}}}
{{{
1. 感觉我们读题还是不太稳,以后给队友讲题之前,最好先让队友独自浏览一遍题目并且理解一下,防止自己的误解坑队友
2. 其实除了开场前一个小时需要拼一下手速,其他时间没必要那么急,我们读题都有点着急,应该更耐心一些
3. 如果确认某个题做法没问题,有时间的话可以让队友在旁边通读代码自己讲解,毕竟我们的代码能力现在做不到100%正确,
   当然今天最后是没多少时间了,如果我的C能早出10-20min,最后说不定可以读一遍找出错误

by 李璜
}}}
----
{{{
今天的优点是前期做的很好,开题顺序没问题,程序也比较扎实,基本吸取了前几场的经验,做的都是挺稳的题目
没有搞出D比较遗憾,而且我的C也占了太多机时了,本来247min交的第一次就应该过,结果拖到了274min才3Y,很不应该
这一场反映出我们队虽然有过中等题的实力,但是切中等题的稳定程度还是不太够,还是要多练啊= =

by 李璜
}}}
{{{
开题的顺序话,下次确实应该注意,D题的确几何题,又有不少情况,容易写错,我们放这么前开有一些早了,I题虽然不擅长,但是看到学长们都很快过了,应该先去看看,想想,这次
也的确不算难,很快就搞出来了。做的好的是前面几道题目都考虑清楚了再写的(比如想好构造方法,纸上写好dp式子,还有栈的时间复杂度),都1Y而且速度也不错。
by Bobgy
}}}


流水帐 by 李璜
上来我过掉水题A(5min 1Y),然后我们讨论了一下H题,龚源学长上去写H,我们继续读题,很快H过掉了(38min 1Y)
这期间zimpha学长想出了F题的解法,然后他上去过了F(68min 1Y),之后我们讨论K,K是一个构造题,构造方案比较简单,
但是编码需要点细心,我和龚源学长讨论了一下谁上去写,然后我去写了(107min 1Y),
到这时候发挥都比较好,在K之后另两位学长开始搞D,做法倒是没什么问题,就是可能实现的比较翔,这时候悲剧就开始了
D先交出一次wa(169min),后来修改之后又交出wa(206min),之后发现不行了,好多队都过了I,我去看了看I,
有点二维DP的想法,于是给龚源学长说了,他很快就推出式子来了,上去过了I(232min 1Y)
在搞D的期间我几次上机写了C,I过后继续写,先交出一个wa(247min),我表示不明所以,稍作修改后再交出一个wa(263min)
然后我就下来让他们继续治疗D题,之后很快发现了C题广搜是不行的,要spfa,上去改了一下就过了(274min 3Y),我太蠢了= =
最后一直在企图治疗D题,但是未获成功……
这次D题是我们的核心问题所在,我来说一下几次错误和修改的过程。
总共修正了以下几个错误:
1. 题意想错了,一开始我们把人与人相连的条件当成距离小于2R,大概在过了I题后,我们又WA了一次,我重新读题,发现了这个问题。(修改:把几个if语句的条件和
结果改一下,没用多久)
2. 分类的时候,我们认为3个点是对称的,对3个点全排列后分类讨论,后来发现,只有两个人联着(距离<=R)的时候才对称,这个错误是紧接着前面的读题错误而来的,
因为按照错误的理解下两个人一定会相连,那么确实是对称的,但重新知道真正的题意之后就不是了,而我们没有立刻想到来修正(也比较难想到)。(修改:把两人不
相连的情况单独提到最前面判,只是剪切粘贴的问题)
3. 在两个人相连,用A巫师覆盖两个点,B巫师把他接到第三个点的情况,我们用叉积判断A在哪里离第三个点最近,但是叉积没有考虑0的时候可能是共线反向。(修正:
乱测case的时候发现一个错的,之后找到了这个问题,花了很多时间)
4. 在发现错误3.后,我们把反向共线单独拿出来判掉,但是特判的if语句写错了,把普通情况也忽略掉了(结果测case也都能过)(修正:赛后我又来看这题我们的代码
,发现的这个错误,也是比赛中剩下的最后一个错误,只改正这个就1Y了。)
改进的方法:
1. 读题的时候,特别是这种很长的题目肯定要多读一遍,很多细节都藏在里面。(对于B题和G题也出现了这样的问题)
2. 读题的时候应该把关键的画下来,让队友更容易注意到,B题zimpha学长看到只能进一个坑道的条件了,但是他其他的没懂;我把其他搞懂了,就是漏了这个条件。(但
是我还是不太明白怎么实现,比赛的时候大家都随手拿题目,随手放桌上的,光一份画了别人怎么快速找到总共画了些什么?靠队友讲题吗?讲题更细心一些?)
3. 这个还是靠赛前的准备,计算几何再熟悉一些就不会犯这个错误了。(已加入错误集)  (或者学长们有没有什么更方便一些的替代方法?)
4. Debug的时候是最注重细节的时候,zimpha学长加了特判之后我只是随意瞄了一眼,感觉没什么问题,就继续看其他的了,而赛后一读才发现那里明显加错了。这个应该
是比赛的时候更小心一些,看代码不能粗粗扫一眼(特别是Debug的时候)。
1. 感觉我们读题还是不太稳,以后给队友讲题之前,最好先让队友独自浏览一遍题目并且理解一下,防止自己的误解坑队友
2. 其实除了开场前一个小时需要拼一下手速,其他时间没必要那么急,我们读题都有点着急,应该更耐心一些
3. 如果确认某个题做法没问题,有时间的话可以让队友在旁边通读代码自己讲解,毕竟我们的代码能力现在做不到100%正确,
   当然今天最后是没多少时间了,如果我的C能早出10-20min,最后说不定可以读一遍找出错误
by 李璜


今天的优点是前期做的很好,开题顺序没问题,程序也比较扎实,基本吸取了前几场的经验,做的都是挺稳的题目
没有搞出D比较遗憾,而且我的C也占了太多机时了,本来247min交的第一次就应该过,结果拖到了274min才3Y,很不应该
这一场反映出我们队虽然有过中等题的实力,但是切中等题的稳定程度还是不太够,还是要多练啊= =
by 李璜
开题的顺序话,下次确实应该注意,D题的确几何题,又有不少情况,容易写错,我们放这么前开有一些早了,I题虽然不擅长,但是看到学长们都很快过了,应该先去看看,想想,这次
也的确不算难,很快就搞出来了。做的好的是前面几道题目都考虑清楚了再写的(比如想好构造方法,纸上写好dp式子,还有栈的时间复杂度),都1Y而且速度也不错。
by Bobgy
附加文件