zoukankan      html  css  js  c++  java
  • Open Train 10352

    开场开9

    然后发现是个交互题,自己想了想搞了个算法,发现假了,决定直接随机去做

    由于随机所以没法本地测,wa1了4次,被坑了一发

    过了,一血

    noname被2卡了....

    3是签到题,6也是签到题

    我把3过了,noname过掉了6

    然后noname的2读错题了,发现是个水题

    A掉2

    之后开始做10,noname想了个假的算法

    lyc写了个三分,A掉10

    同时lyc跟我说了下5,我用bitset水了过去

    接下来noname开始写11,写wa了

    然后这时候7的算法出来了,我就写了一发7

    noname自己发现少了一种情况,然后改了改11,过了

    在noname过掉11以后2分钟我也把7过了..

    这时候还有1,4,8,12没做

    8我写了个暴力dfs打表,然后dfs跑到7步只有16个没跑出来

    期中一部分可以确定答案是8,另外2个不知道是8还是9

    所以开始暴枚,猜是2个9,过了(实际上是2个8,但是数据没出到这两个?)

    noname刚1没刚出来,最后发现是题目读错了...

    比赛第四个小时...我们在想1想不出来..

    最后决定微元爆12,但是很遗憾的没爆出来,wa到死

    -----------------------------

    题解:

    2

    n=1的时候显然是-1

    n>1的时候,只要有边,可以建个反向边就行,答案是1

    如果没有边显然是2

    如果有环就是0

    3

    注意double精度问题

    考虑到小数点后只有5位,可以化成整数做

    5

    首先hash,找到哪些hash值相同的

    直接bitset....复杂度没问题

    k<=5这个条件没啥用....

    6不是我写的,好像是签到题我就没管

    7

    直接做网络流

    源点向每个比赛连一个流量为3的边,每个比赛向每个队连流量为3的边(已经确定好的比赛忽略掉,并且把分数减掉),每个队向终点连它分数的边

    然后跑网络流,由于保证有解,一定是满流,所以我们再看这个图跑过以后的样子

    就是一个解

    9

    每次随机丢一个数字进去,它会返回一个值,我们本身有一个值

    它们的差肯定是m的倍数

    丢999次询问进去,取gcd就行

    10

    首先必须是x相同或者y相同,

    而且相同的那一维是直接取所有那一纬的中位数

    不相同的那一维直接三分求答案就行了

    这一题的x和y可以分开考虑

    11

    这一题我们我们要求的值实际上就是

    (这里的方括号表示上取整)

    [B*log2(A)] * [M/B]

    考虑B从1到sqrt(M),以及M/B在B>sqrt(M)的时候的有限取值范围,直接暴力即可

  • 相关阅读:
    JAVA调优总结:JVM垃圾回收面临的问题解决方案
    用什么紧固件来固定一下我的程序人生呢
    Java设计模式动态代理研究分享
    深入理解Asp.net核心对象
    JAVA编程之动态更新JVM中的class文件
    探索J2ME应用:如何用GCF通信
    MySQL数据库备份的命令应用分享
    送给快要放弃的程序员同行们!
    减速机要像人一样智能减速就厉害了
    如何在Linux系统下进行C++程序开发
  • 原文地址:https://www.cnblogs.com/absi2011/p/9231770.html
Copyright © 2011-2022 走看看