zoukankan      html  css  js  c++  java
  • 江苏省选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++

  • 相关阅读:
    ASP.NET常见命名空间及其功能描述
    C#中的里氏替换原则
    Java中的split函数的用法
    shader之旅-7-平面阴影(planar shadow)
    OpenGL三角形的双面不同颜色的绘制
    MATLAB squeeze 函数
    matlab 常用函数汇总
    第一个OpenGL程序
    Github 留言系统
    Paging 简单自由的分页生成器
  • 原文地址:https://www.cnblogs.com/Blog-of-Eden/p/8992227.html
Copyright © 2011-2022 走看看