游游现在有a个'y',b个'o',c个'u',他想用这些字母拼成一个字符串。
三个相邻的字母是"you"可以获得2分,两个相邻的字母是"oo",可以获得1分。
问最多可以获得多少分?
第一行一个整数,代表询问次数。
接下来行,每行三个正整数
,用空格隔开。
输出行,代表每次询问的答案。
3 1 1 1 2 3 2 1 5 2
2 4 5
第一次询问,可以拼出"you",获得2分。第二次询问,可以拼出"oyouyou",获得4分。第三次询问,可以拼出"uooooyou",获得5分。
import java.util.Scanner;
// 贪心
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int a,b,c;
while(x--!=0){
a=in.nextInt();
b=in.nextInt();
c=in.nextInt();
int us = Math.min(a,Math.min(b,c));//先找有几个"you"
//再找有几个o,o的分数就是o被you拿走后剩余的个数-1,但是注意一点
//o可能为0,那么分数会计算成-1,此时应该为0
System.out.println((us*2)+Math.max(b-us-1,0));
}
}
}