• [USACO2005][POJ3045]Cow Acrobats(贪心)


    题目:http://poj.org/problem?id=3045

    题意:每个牛都有一个wi和si,试将他们排序,每头牛的风险值等于前面所有牛的wj(j<i)之和-si,求风险值最大的牛的最小风险值

    分析:这就是noip2012 T2的来源= =只不过这里是加,noip里是乘

    不妨设所有牛都按最优顺序排好了,考虑相邻的两头牛i和i+1,如果交换他们的位置,那么对前面和后面的结果都无影响,只是他们两个的风险值变化了(变大了),于是我们可以得到这个时候i和i+1的关系

    设w1+w2+...+wi-1=W

    那么如果i和i+1不交换:

    i的风险值:W-si              ①

    i+1的风险值:W+wi-si+1               ②

    如果i和i+1交换:

    i+1(现在在第i个位置)的风险值:W-si+1        ③

    i(现在在第i+1个位置)的风险值:W+wi+1-si       ④

    很容易可以看出②>③,④>①,而又假设原顺序是最优的,那么后来交换后肯定不是最优的,即②<④,即wi+si<wi+1+si+1,即最优序列一定满足wi+si<wi+1+si+1

    所以算法很简单,按wi+si排序即可

    总结:看见求最大的最小不能定式思维二分,当二分不行时可以观察题目的特点,抓住特点很重要

  • 相关阅读:
    Linux三剑客之sed
    xcodebuild
    mac xcworkspace xcodebuild
    [转]Jenkins Xcode打包ipa
    ios批量打包
    ios打包
    ios 打包
    ios 尺寸
    Launch Screen在iOS7/8中的实现
    如何查看ipa包支持哪些cpu指令集
  • 原文地址:https://www.cnblogs.com/wmrv587/p/3700452.html
Copyright © 2020-2023  润新知