Codeforces Round #274 B. Towers

题目链接:http://codeforces.com/contest/479/problem/B

题意:给你n个数,最多经过k次操作(每次操作对两个数,一个数加1,另一个数减1)问在不超过k次操作的过程中,计算出n个数中最大数与最小数的差值。。。

注意这题是个特判题。。。。


思路:先升序排序,对每次操作,我们对最大和最小的两个数进行操作,操作完后又进行排序。。。如果遇到最大与最小数的差值为0就不需要再进行啦。。。。


code:

#include
#include
#include
#include
#include

using namespace std;

struct Node
{
    int d,id;
}a[110];

bool cmp(Node t1,Node t2)
{
    return t1.d


你可能感兴趣的:(ACM)