专栏文章

题解:P13212 [GCJ 2015 Qualification] Infinite House of Pancakes

P13212题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miotg1t8
此快照首次捕获于
2025/12/03 00:52
3 个月前
此快照最后确认于
2025/12/03 00:52
3 个月前
查看原文
AC代码:
CPP
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>

using namespace std;

int solve(vector<int>& plates) {
    int max_p = *max_element(plates.begin(), plates.end());
    if (max_p <= 1) {
        return max_p;
    }
    int res = max_p;
    for (int k = 2; k <= max_p; ++k) {
        int total_moves = 0;
        for (int p : plates) {
            total_moves += (p - 1) / k;
        }
        res = min(res, total_moves + k);
    }
    return res;
}

int main() {
    int T;
    cin >> T;
    for (int t = 1; t <= T; ++t) {
        int D;
        cin >> D;
        vector<int> plates(D);
        for (int i = 0; i < D; ++i) {
            cin >> plates[i];
        }
        int ans = solve(plates);
        cout << "Case #" << t << ": " << ans << endl;
    }
    return 0;
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...