zoukankan      html  css  js  c++  java
  • csp-s模拟84

    T1:

      考虑如何能按顺序生成光滑数。对每个质数用队列维护包含此质数的候选集合,每次从所有队首取出最小的作为一个光滑数,用每个质数乘上这个光滑数并加入相应候选集合。这样不会漏掉一个光滑数,但会有重复。比如取到光滑数$3$,乘上$2$加入了$2$的队列,而取到$2$时同样乘$3$加入$3$的队列。如果规定一个数只由自己最小的质因数产生就可以去重。

    T2:

      状压$dp$。首先序列是按顺序依次插数的,就是说调换前后顺序可能会不合法。考场上打的$dp$没注意这一点,做成了排列问题,调了一个多小时过不了样例才发现。

      状态不好设。只用一个约数出现的次数表示状态还不行,需要知道哪几个约数是在同一个数中的。于是就再加一维表示那些约数对在不同数中出现,这样加入一个新数时,就能判断与其不互质的数是否超过$1$。即如果新数的两个约数在不同的数中出现过,与新数不互质的个数就为$2$。

      状态一共有$27$位,压个$int$用哈希表存,实际状态很少。

    T3:

      思路新颖的一道题。能嗅到很强的乱搞题气息,但搞得有理有据。合法方案是出错点数不过半,就是说随便一个点在合法方案变换成功的概率有$1/2$以上。变换前后可以列方程,用两个点列出四个,解出$dx,dy,sin( heta)scale,cos( heta)scale$,三角函数求出$ heta$,代出$scale$,验证是否合法。

      精度稍炸,多测$10$组取平均值。$tan2$函数传入$sin,cos$值能确定角的象限。

  • 相关阅读:
    RP2833 FPGA对应串口标识
    rp2833 网卡以及串口与接插件位置关系
    环境检测 短信收发的测试
    #A号板测试汇总
    #8号板测试汇总
    #2号板测试汇总
    #6号板问题
    【POJ3045】Cow Acrobats(贪心)
    【HDU1219】AC Me(水题)
    BUPT2017 wintertraining(15) #2 题解
  • 原文地址:https://www.cnblogs.com/Duan-Yue/p/11730107.html
Copyright © 2011-2022 走看看