集五福

import java.util.Scanner;

/**
* Gathering five blessings
* 大概意思是:集五福,人数≤10,每个人集完五福后,用一串长度为5的字符串表示集到的结果,
* 比如“10011”为该人集到了第一张、第四张和第五张五福。问这些人一共能凑齐完整的多少套五福。
*/
public class GatheringFiveBlessings {
public static int getGFB(String [] inputs){
int min = Integer.MAX_VALUE;
//对每一种福建立存储空间求最小的 木桶原理
int[] fiveBlessings= new int[5];
for (int i = 0; i < inputs.length; i++) {
for (int j = 0; j < 5; j++) {
if(inputs[i].charAt(j)=='1'){
fiveBlessings[j]=fiveBlessings[j]+1;
}
}

}

for (int i = 0; i <5 ; i++) {
if(fiveBlessings[i]<min){
min = fiveBlessings[i];
}
System.out.println(fiveBlessings[i]);
}
return min;

}

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String rl = scanner.nextLine();
//团队的五福收集情况如下:"00011 11000 11111 10101 11101"
String[] inputs = rl.split(" ");
System.out.println("一共能集齐"+ getGFB(inputs)+"套五福");
}
}
运行结果:

 

 

 
posted @ 2020-04-27 20:25  ~gcc~  阅读(469)  评论(0编辑  收藏  举报