鲁的智力 题解

题意

n 个人,m 个学科,你第 i 门学科排在第 ai 名,且每个人在每个学科得到的分数是一个 01 之间的一个实数,求你总分排名的最大、小值。

题解

先考虑排名最高的情况。

我们可以每一科都这样构造:

b1=1

b2=1Δx

b3=12Δx

bk=1(k1)Δx

bk+1=0+(nk)Δx

bk+2=0+(nk1)Δx

bn=0

其中 k 为你的排名、bi 为第 i 名的分数、Δx 是一个极小值。

这样可以使得有任意一科在你下面的都会被你超越,此时你排名最高。

最低同理。

namespace zqh {
int n, m;

void init() {
    cin >> n >> m;
    int x = 0, y = 0;
    for (int i = 1; i <= n; i++) {
        int s;
        cin >> s;
        x += s - 1;
        y += m - s;
    }
    cout << max(1LL, m - y) << "\n" << min(m, x + 1);
}

void solve() {}

void main() {
    init();
    solve();
}
}  // namespace zqh
posted @   Archippus  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示