第一天,他用炼乳包了一份饺子、一份酸梅汁和一份煎饼。
丹尼斯餐馆的特点是点餐的程序。丹尼斯自己为每位来访者挑选了一套客人将要接受的菜肴。这样做时,丹尼斯遵循以下规则:
每位游客至少应得到一道菜(饺子、酸梅汁、炼乳煎饼都被视为菜肴);
每位游客最多可获赠一份饺子、一份蔓越莓汁和一份加炼乳的煎饼;
所有来访者都应得到不同的菜肴。
丹尼斯最多能接待多少访客?
输入
第一行包含整数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; }