题目链接:http://codeforces.com/contest/732/problem/C

Codeforces Round #377 (Div. 2) Sanatorium_#include

Codeforces Round #377 (Div. 2) Sanatorium_#include_02

题意:给我们早中晚饭的次数,问我们最少可能缺饭的次数。

这题我们可以进行贪心处理,首先我们先确定最少的完整的不缺饭的情况,缺的都是缺饭的。

那么问题就变成了怎么确定最少的完整的不缺饭的情况。

很显然,肯定不是先早中晚相等的时候,明显任意一个比另外两个大一个要少一点,所以我们只需要找出最大值,然后减一,再找缺的就可以了。


#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long LL;
LL a,b,c;
int main()
{
scanf("%I64d%I64d%I64d", &a, &b, &c);
LL Max = max(a, max(b, c));
Max--;
LL sum = 0;
if(Max > a) sum += Max-a;
if(Max > b) sum += Max-b;
if(Max > c) sum += Max-c;
printf("%I64d\n", sum);
}