捜犬後端筆記試験、2020.9.5
9514 ワード
道具问题:A,B,C道具それぞれa,b,c个.2つの任意の道具は別の道具を交換することができて、1つのA、B、Cの1組、1つの奨励を交換することができて、最大でもう1つの奨励をいくら交換することを求めます.入力4,4,2入力3
import java.util.Arrays;
public class Test9 {
public static void main(String[] args) {
System.out.println(numberofprize(3,5,10));
}
static int numberofprize(int a,int b,int c){
int res = 0;
int[] data = {a,b,c};
Arrays.sort(data);
data[2] = data[2]-data[0];
data[1] = data[1]-data[0];
res = data[0];
data[0] = 0;
int num = 0;
while(true){
if(data[1]>0 && data[2]-1>data[1] && data[2]>2){
data[2] = data[2]-3;
num++;
}
else if(data[2]-1>0 && data[1]-1>0){
data[2] = data[2]-2;
data[1] = data[1]-2;
num++;
}
else if(data[1]==0 && data[2]>4){
data[2] = data[2]-5;
num++;
}
else{
break;
}
}
return res+num;
}
}