zoukankan      html  css  js  c++  java
  • 2020.10.05【NOIP提高A组】模拟 总结

    估分:(40 + 30 + 0 + 30 = 100)
    考场:(80 + 43.3 + 0 + 30 = 153.3)
    ((10))

    (T1)

    考场打的是(O(n^3))暴力(DP),结果。。。
    其实可以优化到(O(n^2*logn))的,用多项式优化即可。
    但是正解其实离暴力(DP)很近了。

    只要像上述技巧一样,在(dfs)下去之前下传,走完子树以后再传回当前节点,如此即可。

    (T2)

    考场没有什么想法,大概推了一下:
    设输入的为(a),求得的为(b)(sort)以后,
    发现:(b[1]+b[2]=a[1]),(b[1]+b[3]=a[2]),(b[n-1]+b[n]=a[n*(n-1)/2]),剩下的不清楚怎么处理,于是打了个暴力+上述的优化。
    正解其实是根据上述的规律来操作的。正解是枚举(b[2]+b[3]=a[k]),于是可以得到(b[1],b[2],b[3]),下一个最小的就是(b[1]+b[4]),然后再把(b[1]+b[4],b[2]+b[4],b[3]+b[4])去掉,下一个最小的就是(b[1]+b[5]),以此类推,最后可以(O(n^2))求出一种可能的解(也可能不是)。而(b[2]+b[3])的值最多只有(n)个,于是乎,(O(n^3))算法。
    结果改题的时候我打了一个二分的删除删除操作,这样似乎显然会(TLE),结果跑了个最快。。。
    其实可以使用(hash)来进行插入删除操作。

    (T3)

    考场看完题面,感觉不可做,弃疗也。

    (T4)

    一开始想到主席树,但是发现修改似乎不可行,于是换了个思考点。
    考虑欧拉序,但是推了半天发现没有什么结果,于是上了一个暴力。
    正解转(dfs)序的二维平面,而后三维偏序问题?差分+(cdq)分治?懵逼o((⊙﹏⊙))o
    我的题解

    总结

    发现自己对于一些技巧性的知识掌握不佳。
    有些规律没有继续往下推,需要思考得更深一点才行,不要动不动就否定自己的想法。
    有些知识似乎掌握的不到位,例如(FFT)(NTT),树上(DP)

  • 相关阅读:
    Java正則表達式入门
    Effect of Switchovers, Failovers, and Control File Creation on Backups
    Android 屏幕截图(底层实现方式)
    Java实现奇偶数排序
    Java实现奇偶数排序
    Java实现奇偶数排序
    Java实现找零问题
    Java实现找零问题
    Java实现找零问题
    Java实现找零问题
  • 原文地址:https://www.cnblogs.com/jz929/p/13771116.html
Copyright © 2011-2022 走看看