zoukankan      html  css  js  c++  java
  • 期末总评

    题目描述

    贝西参加了 N 门考试。第 i 门考试的满分为 P i ,贝西的得分为 T i 。学校计算总评分的方法是将
    每门考试的得分之和作为分子,满分之和作为分母,以它们的比值作为总评分。
    根据学校的政策,在计算总评分的时候,贝西可以选择取消 D 门考试的成绩,这样可以使剩下
    的考试得到更高的总评分。老师想当然地把贝西得分率最低的 D 门考试去掉了(得分率就是一门考
    试的得分与满分之比)。
    然而贝西一眼就看出老师这么做是有问题的。贝西知道,对于不同的 D,去掉得分率最低的考试
    不见得是最好的选择。请帮助贝西算算,当 D 取 1 到 N − 1 之间的整数时,哪些 D 可能造成这样惊
    人的效果?
    贝西还注意到一件有意思的事情,她所有考试的得分率都是不同的。

    输入

    • 第一行:单个整数 N,1 ≤ N ≤ 50000
    • 第二行到第 N + 1 行:第 i + 1 行有两个整数 H i 和 W i ,0 ≤ T i ≤ P i , 1 ≤ P i ≤ 40000

    输出

    • 第一行:单个整数 K,表示 D 有多少种取值方法,会造成老师的选择不是最优的
    • 第二行到第 K + 1 行:每行一个整数,表示一个让老师犯错的 D 的取值,这些值必须以升序输

    样例输入

    5 1 2 5 9 3 8 4 10 1 3

    样例输出

    2 1 2

    提示

    D = 1 时,去掉 1/3 不如去掉 3/8;D = 2
    时,去掉 1/3 和 3/8 不如去掉 3/8 和 4/10


    反例构造。假设最优的分数是一个权值很大的满分,另外两次考试都不及格,则应该取权重较小
    的,而不是分数较高的。
    最优值可用二分搜索计算,见日本人书。
    PEACE
  • 相关阅读:
    mysql修改数据表名
    HDU 5742 It's All In The Mind (贪心)
    HDU 5752 Sqrt Bo (数论)
    HDU 5753 Permutation Bo (推导 or 打表找规律)
    HDU 5762 Teacher Bo (暴力)
    HDU 5754 Life Winner Bo (博弈)
    CodeForces 455C Civilization (并查集+树的直径)
    CodeForces 455B A Lot of Games (博弈论)
    CodeForces 455A Boredom (DP)
    HDU 4861 Couple doubi (数论 or 打表找规律)
  • 原文地址:https://www.cnblogs.com/gshdyjz/p/7263550.html
Copyright © 2011-2022 走看看