Codeforces Round#622 Div2A Fast Food Resturant

题意:厌倦了无聊的办公室工作,丹尼斯决定开一家快餐店。

第一天,他用炼乳包了一份饺子、一份酸梅汁和一份煎饼。

丹尼斯餐馆的特点是点餐的程序。丹尼斯自己为每位来访者挑选了一套客人将要接受的菜肴。这样做时,丹尼斯遵循以下规则:

每位游客至少应得到一道菜(饺子、酸梅汁、炼乳煎饼都被视为菜肴);

每位游客最多可获赠一份饺子、一份蔓越莓汁和一份加炼乳的煎饼;

所有来访者都应得到不同的菜肴。

丹尼斯最多能接待多少访客?

输入

第一行包含整数t(1≤t≤500)-要解决的测试用例数。

其余的每一个t行包含整数a、b和c(0≤a、b、c≤10)-饺子的份数、蔓越莓汁的份数和丹尼斯做的炼乳煎饼的份数。

输出

对于每个测试用例,打印一个整数-丹尼斯可以提供的最大访客数。

题解:在三种菜品的条件下,最多也只能满足7个顾客,遍历每种可能性就好了。

#include<bits/stdc++.h>
using namespace std;
const int maxn=1014;
int T;
int a,b,c;
int main () {
    scanf("%d",&T);
    while (T--) {
        scanf("%d%d%d",&a,&b,&c);
        if (a<b) swap(a,b);
        if (a<c) swap(a,c);
        if (b<c) swap(b,c);
        int ans=0;
        if (a) ans++,a--;
        if (b) ans++,b--;
        if (c) ans++,c--;
        if (a&&b) ans++,a--,b--;
        if (a&&c) ans++,a--,c--;
        if (b&&c) ans++,b--,c--;
        if (a&&b&&c) ans++,a--,b--,c--;
        printf ("%d
",ans);
    }
    return 0;
} 
原文地址:https://www.cnblogs.com/zhanglichen/p/12390133.html