2016.08.16【初中部 NOIP提高组 】模拟赛C

    xiaoxiao2026-09-22  0

    T1:裸裸的快排...

    T2:贪心.

    先按从小到大排序.

    很明显对于前i个人中,如果i<=3很容易推出,大于三的时候其实也只有对应的两种渡河方法.

    第一种:把前i-1个人渡过去的最优值+第一个人回来接他+再渡过去.

    第二种:把前i-2个人渡过去的最优值+第一个人回来接他+把i和i-1两人渡过去+第1,2人渡河.

    T3:最最简单的bfs即可.

    T4:

    f[i]表示以第i个数为结尾时的最优值,很明显,我们要枚举一个数j去更新i(当a[j]-a[i]的绝对值为1时)但这样子的效率为O(n²)

    但仔细观察可以发现,更新j的时候,只需找前j个当中3个互不相等的数中最大的三个数来更新i即可.

    因为假设有一个数x,则只有x-1和x+1不能更新x,再多出一个数,不管是什么数,都可以更新x了.

    注意是互不相等,所以处理起来会有点麻烦,多细心点还有脑洞大点就可以了.

    转载请注明原文地址: https://ju.6miu.com/read-1312202.html
    最新回复(0)