Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String chosenMember = scanner.nextLine();
- FamilyMember familyMember = new FamilyMember();
- familyMember.setName(chosenMember);
- boolean foundMember = false;
- List<FamilyMember> familyTree = new ArrayList<>();
- familyTree.add(familyMember);
- String input = "";
- int myIndex = 0;
- while (true)
- {
- input = scanner.nextLine();
- if (input.contains("-"))
- {
- String[] tokens = input.split(" - ");
- if (Character.isLetter(tokens[0].charAt(0)) && Character.isLetter(tokens[1].charAt(0)))
- {
- String firstPersonName = tokens[0];
- String secondPersonName = tokens[1];
- for (int i = 0; i < familyTree.size(); i++) {
- var currentMember = familyTree.get(i);
- if (currentMember.getName().equals(firstPersonName))
- {
- foundMember = true;
- myIndex = i;
- break;
- }
- }
- if (foundMember)
- {
- familyTree.get(myIndex).getChildren().add(secondPersonName);
- }
- else {
- FamilyMember familyMember1 = new FamilyMember();
- familyTree.add(familyMember1);
- familyMember1.setName(firstPersonName);
- familyMember1.getChildren().add(secondPersonName);
- }
- foundMember = false;
- myIndex = 0;
- for (int i = 0; i < familyTree.size(); i++) {
- var currentMember = familyTree.get(i);
- if (currentMember.getName().equals(secondPersonName))
- {
- foundMember = true;
- myIndex = i;
- break;
- }
- }
- if (foundMember)
- {
- familyTree.get(myIndex).getParents().add(firstPersonName);
- }
- else {
- FamilyMember familyMember1 = new FamilyMember();
- familyTree.add(familyMember1);
- familyMember1.setName(secondPersonName);
- familyMember1.getParents().add(firstPersonName);
- }
- foundMember = false;
- myIndex = 0;
- }
- else if (Character.isLetter(tokens[0].charAt(0)) && Character.isDigit(tokens[1].charAt(0)))
- {
- String firstPersonName = tokens[0];
- String secondPersonBirthday = tokens[1];
- for (int i = 0; i < familyTree.size(); i++) {
- var currentMember = familyTree.get(i);
- if (currentMember.getBirthday().equals(secondPersonBirthday))
- {
- foundMember = true;
- myIndex = i;
- break;
- }
- }
- if (foundMember)
- {
- familyTree.get(myIndex).getParents().add(firstPersonName);
- }
- else {
- FamilyMember familyMember1 = new FamilyMember();
- familyTree.add(familyMember1);
- familyMember1.setBirthday(secondPersonBirthday);
- familyMember1.getParents().add(firstPersonName);
- }
- foundMember = false;
- myIndex = 0;
- for (int i = 0; i < familyTree.size(); i++) {
- var currentMember = familyTree.get(i);
- if (currentMember.getName().equals(firstPersonName))
- {
- foundMember = true;
- myIndex = i;
- break;
- }
- }
- if (foundMember)
- {
- familyTree.get(myIndex).getChildren().add(secondPersonBirthday);
- }
- else {
- FamilyMember familyMember1 = new FamilyMember();
- familyTree.add(familyMember1);
- familyMember1.setName(firstPersonName);
- familyMember1.getChildren().add(secondPersonBirthday);
- }
- foundMember = false;
- myIndex = 0;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement