Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import java.util.List;
- import java.util.Scanner;
- import java.util.stream.Collectors;
- public class BakingFactory {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String bestBatch = "";
- int bestTotalQuality = 0;
- double bestAverageQuality = 0.0;
- int bestBatchLength = 0;
- String line = scanner.nextLine();
- while (!line.equalsIgnoreCase("Bake it!")) {
- //read batch
- List<Integer> qualityList = Arrays.stream(line.split("#"))
- .map(Integer::parseInt).collect(Collectors.toList());
- //take best
- int batchTotalQuality = qualityList.stream().mapToInt(Integer::intValue).sum();
- int batchLenght = qualityList.size();
- double batchAverageQuality = (double) batchTotalQuality / batchLenght;
- // check bestTotalQuality
- if (batchTotalQuality >= bestTotalQuality) { //else do nothing
- if (batchTotalQuality == bestTotalQuality) {
- //check average quality
- if (batchAverageQuality >= bestAverageQuality) { //else do nothing
- if (batchAverageQuality == bestAverageQuality) {
- //check the fewest elements (length).
- if (batchLenght < bestBatchLength) { //else do nothing
- //new bestBatch
- bestTotalQuality = batchTotalQuality;
- bestAverageQuality = batchAverageQuality;
- bestBatchLength = batchLenght;
- bestBatch = qualityList.toString().replaceAll("[\\[\\],]", "");
- }
- } else { //new bestBatch
- bestTotalQuality = batchTotalQuality;
- bestAverageQuality = batchAverageQuality;
- bestBatchLength = batchLenght;
- bestBatch = qualityList.toString().replaceAll("[\\[\\],]", "");
- }
- }
- } else { //new bestBatch
- bestTotalQuality = batchTotalQuality;
- bestAverageQuality = batchAverageQuality;
- bestBatchLength = batchLenght;
- bestBatch = qualityList.toString().replaceAll("[\\[\\],]", "");
- }
- }
- line = scanner.nextLine();
- }
- System.out.println("Best Batch quality: " + bestTotalQuality);
- System.out.println(bestBatch);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement