江苏省选2018游玩记

高一最后一场比赛,当然要好好玩耍啦

Day1:

  T1. 我们证一证暴力的复杂度是对的(有点小卡常?)

  T2. 算每个环对答案的贡献

  到此为止,前两题水的有点过分了?

  T3. 受前两题影响,以为这题也难不到哪里去,一开始理解错题意了,wa样例之后才发现qaq

  计算几何常见套路:二分。

  大概有一个二分图匹配的做法?

  冷静分析一下,发现根据hall定理,在根据这个图特殊的性质:一个点匹配的是圆上一个区间。于是做完了。

  11:30,写完T3的 n^3 log 做法。感觉很卡常啊(此处的n是原题的两倍)

  开始用线段树优化,最后优化到 log * n^2logn的复杂度。

  最后40分钟,拍了拍T1,感觉很稳。

下午:emm我T1怎么只拿了40...(不科学)

  emmT3莫名丢了10分...

Day2:

  看到题面中的“九条可怜”,突然兴奋

  T1. 怎么一上来就计算几何啊,不按套路出牌。。

    大概可以做到一个log

  T2. 乍一看,没有太多思路?

  于是开始写T1..

  10:30,终于草率地写完了,感觉还少考虑了好多细节。

  (样例没过qaq)

  上个厕所冷静一下,我们是不是不应该纠结于计算几何,做代码难度大的题可是要承受一定风险的啊。

  于是开始想T2

  11:00,大致有了想法,可总想不清楚。时间不太够啊,点开T3

  (“可怜”应该在题面里加一句:“题目难度与顺序无关”)

  11:40,写完T3。虽然好久没写主席树了,但这个主席树真是太好写了!

  12:00,大致整理完了T2的思路。我们大致要枚举走路的周期。

    因为可能存在多个环,是否存在多个环的判定只需要知道周期中一共向下走了a步,向右走了b步。

    我们可以从小到大枚举周期出现了k次,直到ak%n==0,bk%m==0,而此时(a+b)k==n*m是不存在多个环的充要条件。

    剩下的只要dp就可以求出这种周期对答案的贡献了。

    由于这个周期中可能会存在更小的周期,枚举更小的周期,减去这些情况即可。

  12:30,写完T2,愉快地过了样例,没有过大样例?我是不是凉了啊qaq

  12:55,打开代码再看了一眼,惊奇地发现,自己从小到大枚举周期出现了k次,我只枚举到了50。而大样例中出现了96次!

    无脑地改成枚举到100。令人震惊地过了大样例。。

  曾经的我估分200的。。

  或许大家已经发现了错误,周期出现次数可能会超过100。。准确的说,不超过lcm(n,m)。而样例lcm(32,48)=96!

  或许我改成枚举到2500就能A了呜呜呜

  比赛结束后,听说好多人坚持着调试T1,几乎都gg了。计算几何题果然有着神秘的魅力。。

下午:高一最后一场比赛结束了,真是愉悦。我们将要踏上文化课的“不归路”O(∩_∩)O

  明年ZJOI rp++

原文地址:https://www.cnblogs.com/Blog-of-Eden/p/8992227.html