1 条题解

  • 0
    @ 2025-10-8 20:47:49

    英语老师最支持OI的一集

    #include <bits/stdc++.h>
    using namespace std;
    
    char buf[1<<20], *p = buf;
    inline int read() {
        while(!isdigit(*p)) p++;
        int x = 0;
        while(isdigit(*p)) x = x*10 + (*p++ - '0');
        return x;
    }
    void solve() {
        int P = read(), K = read(), L = read();
        vector<int> f(L);
        for(int i = 0; i < L; ++i)
            f[i] = read();
        
        sort(f.rbegin(), f.rend());
        
        long long ans = 0;
        for(int i = 0; i < L; i++)
            ans += 1LL * f[i] * (i/K + 1);
        
        printf("%lld\n", ans);
    }
    int main() {
        fread(buf, 1, sizeof(buf), stdin);
        int T = read();
        for(int cas = 1; cas <= T; cas++) {
            printf("Case #%d: ", cas);
            solve();
        }
        return 0;
    }
    
    • 1

    信息

    ID
    38660
    时间
    3000ms
    内存
    1024MiB
    难度
    3
    标签
    递交数
    3
    已通过
    1
    上传者