zoukankan      html  css  js  c++  java
  • noip2018练习总结

    前言

    从上午八点写到下午五点,就写了D1和D2T1,感觉和我去年考试的时候效率差不多
    我这次是知道解法去做的啊!!!!!,感觉我必将惨败。。。。


    Day1

    T1

    想了半天,还是只会勉强卡过去的n^2,明明听别人讲过正解的
    直接贪心,读入一个a[i],如果a[i]>a[i-1]就把答案加上a[i]-a[i-1],不然不做操作,证明显然

    code


    T2

    现在感觉T2挺容易的了,考虑一种货币怎么样有用
    当且仅当它不能被小于它的货币表示,用类似线性基的思想考虑就可以了
    然后排个序,跑完全背包就好了。。。。

    code


    T3

    T3写了半个上午,
    看到最小值最大先想到二分,
    考虑dp或贪心,我呆呆地先想了dp
    设dp[x][i][j]表示以x为根的子树,有i条合法,挂在根上最长的链长是j
    然后感觉转移很奇怪,好像贪心的选i最大的就好了,然后就贪心吧
    对于每个子树维护子树内最多的合法的链数,以及挂在根上的最长的链长
    然后类似菊花图的部分分去做就可以了,用个multiset

    ps: set要用set自带的lower_bound,不然会T的飞起,因为这个调了好久

    code


    Day2

    T1

    去年还会nlogn的,今天不会了,
    感觉思维好乱的,好多东西都想复杂了
    看到n^2可以过,那么直接枚举断哪条边,然后像一棵树一样贪心就可以了

    code


  • 相关阅读:
    如何使用ERStudio 生成comment
    windows 使用excel导出的问题
    iOS Runtime(一)、objc_class深深的误解
    iOS开发安全
    iOS微信运动 刷分
    APP中的 H5和原生页面如何分辨、何时使用
    Weex系列二、显示图片
    Android系列一、创建项目
    Weex系列一、构建Weex工程
    时间复杂度
  • 原文地址:https://www.cnblogs.com/lzqlalala/p/11768515.html
Copyright © 2011-2022 走看看