zoukankan      html  css  js  c++  java
  • CODEFORCES掉RATING记 #1

      时间:2017.7.16晚
      比赛:Educational Codeforces Round 25

      比赛开始前去睡觉了。。。开始后5min才起来

      一进去就点开AB,B先加载好,就先做了B。读完题后发现是傻题,给你一个 $ 10 imes 10 $ 的五子棋盘,问你下一步后能不能赢。直接枚举+判断搞定。

      A的题面看了五分钟开始看不懂,就去闻了一下同学,题面是给你一个超级简单的密码,要你解密。这道题我想多了导致没有1A。

      接下来去看D。给你两个字符串 $ s $ 和 $ t $ 都含有小写字母, $ s $ 中还含有'?'。'?'能表示任意字符。判断将两个字符串打乱后 $ t $ 最多能在 $ s $ 中出现多少次。二分答案+判断。

      然后是C,有 $ n $ 道题,如果你当前做的题最难是 $ s $ ,则你能做出难度 $ leq 2 imes s $ 的题。你还可以做这 $ n $ 道题以外的题,难度任意。问你最少要做多少这 $ n $ 道题以外的题才能做出这 $ n $ 道题。直接排序+扫描。

      E:比赛时写了一个查分约束,但题面说求字典序最小的解,似乎(对于我这种蒟蒻来说)不太能做。结束后题解说按拓扑序从后往前考虑就可以了。当字典序要求最小的时候应该尽量把字典序打的往后放。一个点 $ i $ 放多少与 $ i $ 的祖先有关,所以按拓扑序考虑。

      F:很容易想到DP。我比赛时SB了。DP的方程为 $ f_i = f_j + a + | b | $ , 但我脑抽想成$ f_i = f_j + | a | + | b | $ 了,就认为在一些边界的处理上会有问题,就没有写。 $ n = 8000 $ ,直接KMP或者其他方法乱搞即可。

      G:猜到是动态点分治了,但不想写,细节也写不好,就放弃了。题解有 $ O(n) $ 的神奇做法 。我们先把第一个黑点设为根,设 $ f_i $ 表示 $ i $ 到根的点的编号的最小值。这个东西可以 $ O(n) $ 处理出。每次把一个点 $ x $ 染黑后可以发现 $ x $ 到根的点都能成为答案,用一个变量 $ s $ 维护这个东西。每次染色时暴力往上跳,遇到已经跳过的点就break。查询时 $ ans = min( s , f_x ) $ 。

      

      做完前4题大概是24:00,排名是240左右。结束时掉到rk300+了,今天早上又爬回rk240了。

      比赛时如果不SB的话应该可以做出EF,就能进前20啦。哪来的那么多如果

  • 相关阅读:
    oracle语法查某个字段为空
    MQC集群配置错误
    maven打包报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.5:test
    ibm-mq-scope属性的作用?
    Name jms can't bind to context问题解决
    对比两张Excel表数据差异时,遇到数据雷响不一致
    excel如何复制筛选内容
    怎么对比两个excel文档的数据差异
    怎么把txt转换成excel
    一张表的某列值去更新另一张表的某列值。
  • 原文地址:https://www.cnblogs.com/ywwyww/p/8511018.html
Copyright © 2011-2022 走看看