算法竞赛入门经典——训练指南

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法竞赛入门经典——训练指南相关的知识,希望对你有一定的参考价值。

1. UVa 11300

技术分享

技术分享

技术分享

技术分享

我的代码:

技术分享
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;

long long C[1000010], M, a;
int main() {
    int n;
    while (~scanf("%d", &n)) {
        C[0] = 0;
        for (int i = 1; i <= n; i++) {
            scanf("%lld", &a);
            C[i] = C[i-1]+a;
        }
        M = C[n]/n;
        for (int i = 1; i < n; i++) C[i] -= i*M;
        sort(C, C+n);
        long long ans = 0, x = C[n/2];
        for (int i = 0; i < n; i++) ans += abs(x-C[i]);
        cout<<ans<<endl;
    }
}
View Code

 

以上是关于算法竞赛入门经典——训练指南的主要内容,如果未能解决你的问题,请参考以下文章

算法竞赛入门经典训练指南-做题详细记录(更新中)

算法竞赛入门经典-训练指南(10881-Piotr's Ants)

算法竞赛入门经典--例题和课后训练(动态规划)

《算法竞赛入门经典》3.3最长回文子串

算法竞赛入门经典 例题 3-4 回文串

LA5135 Mining Your Own Business