Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.Collections;
- import java.util.List;
- import java.util.Scanner;
- public class Pyramid {
- public static void main(String[] args) {
- Scanner input = new Scanner(System.in);
- int n = Integer.parseInt(input.nextLine());
- ArrayList<Integer> sequence = new ArrayList<>();
- int previous = 0;
- for (int i = 0; i < n; i++){
- String[] row = clean(input.nextLine().split("[\\s]+"));
- if (i == 0){
- sequence.add(Integer.parseInt(row[0]));
- previous = Integer.parseInt(row[0]);
- }
- else {
- ArrayList<Integer> rowNums = new ArrayList<>();
- for (int j = 0; j < row.length; j++){
- rowNums.add(Integer.parseInt(row[j]));
- }
- int currentNearest = Integer.MAX_VALUE;
- boolean found = false;
- for (int k = 0; k < rowNums.size(); k++){
- if (rowNums.get(k) > previous && rowNums.get(k) <= currentNearest){
- currentNearest = rowNums.get(k);
- found=true;
- }
- }
- if (found){
- sequence.add(currentNearest);
- previous = currentNearest;
- }
- else{
- previous++;
- }
- }
- }
- for (int i = 0; i < sequence.size(); i++){
- if (i == sequence.size()-1){
- System.out.print(sequence.get(i) + "\n");
- }
- else {
- System.out.print(sequence.get(i) + ", ");
- }
- }
- }
- public static String[] clean(final String[] v) {
- List<String> list = new ArrayList<String>(Arrays.asList(v));
- list.removeAll(Collections.singleton(""));
- return list.toArray(new String[list.size()]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment