AtCoder Beginner Contest 151

AtCoder Beginner Contest 151

https://atcoder.jp/contests/abc151
这一套质量一般

E - Max-Min Sums

组合数学

#include <bits/stdc++.h>
#define ll long long

using namespace std;
const int N = 1e5 + 5, mod = 1e9 + 7;
ll a[N], n, k, sum;
ll fact[N], infact[N];

ll qmi(ll a, ll k, int p){
    ll res = 1;
    while(k){
        if(k & 1)
            res = (ll)res * a % p;
        a = (ll)a * a % p;
        k >>= 1;
    }
    return res;
}

ll C (int a, int b) {
    if (a < b)  return 0;
    return fact[a] * infact[b] % mod * infact[a - b] % mod;
}

int main () {
    fact[0] = infact[0] = 1;
    for(int i = 1; i < N; i++){
        fact[i] = (ll)fact[i-1] * i % mod;
        infact[i] = (ll)infact[i-1] * qmi(i, mod - 2,mod) % mod;
    }
    cin >> n >> k;
    for (int i = 1; i <= n; i++)    cin >> a[i];
    sort (a + 1, a + n + 1);
    for (int i = 1; i <= n; i++)    (sum += a[i] * (C (i - 1, k - 1) - C (n - i, k - 1) + mod) % mod) %= mod;
    cout << (sum + mod) % mod;
}

F - Enclose All

最小圆覆盖
不想写计算几何。

posted @   Sakana~  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2022-03-31 洛谷 P1162 填涂颜色 DFS
点击右上角即可分享
微信分享提示