Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Comparator;
- import java.util.List;
- import java.util.Scanner;
- class Film {
- public String filmcim;
- public int evszam;
- public Film(String filmcim, int evszam) {
- this.filmcim = filmcim;
- this.evszam = evszam;
- }
- public String getFilmcim() {
- return filmcim;
- }
- public int getEvszam() {
- return evszam;
- }
- @Override
- public String toString() {
- return evszam + ": " + filmcim;
- }
- }
- class Szinesz {
- public String nev;
- List<Film> filmlista = new ArrayList<>();
- public int counter;
- public Szinesz(String nev, int counter) {
- this.nev = nev;
- this.counter = counter;
- }
- public String getNev() {
- return nev;
- }
- public List<Film> getFilmlista() {
- return filmlista;
- }
- public int getCounter() {
- return counter;
- }
- @Override
- public String toString() {
- return nev;
- }
- }
- public class Mozisztarok {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- String line;
- List<Szinesz> szineszek = new ArrayList<>();
- while(sc.hasNextLine()){
- line = sc.nextLine();
- if (line.equals("x")) break;
- String[] tokens1 = line.split(" \\(");
- String[] tokens2 = tokens1[1].split("\\):");
- String[] tokens3 = tokens2[1].split(",");
- Film filmek = new Film(tokens1[0], Integer.parseInt(tokens2[0]));
- for (int i = 0; i < tokens3.length; i++){
- Boolean b = false;
- for (int j = 0; j < szineszek.size(); j++){
- if (szineszek.get(j).nev.equals(tokens3[i])){
- b = true;
- szineszek.get(j).counter++;
- szineszek.get(j).filmlista.add(filmek);
- szineszek.get(j).filmlista.sort(Comparator
- .comparing(Film::getEvszam)
- .thenComparing(Film::getFilmcim));
- }
- }
- if (!b){
- Szinesz tmp = new Szinesz(tokens3[i], 1);
- szineszek.add(tmp);
- tmp.filmlista.add(filmek);
- }
- }
- }
- szineszek.sort(Comparator
- .comparing(Szinesz::getCounter, Comparator.reverseOrder())
- .thenComparing(Szinesz::getNev));
- for (int i = 0; i < szineszek.size(); i++){
- System.out.println(szineszek.get(i));
- for (int j = 0; j < szineszek.get(i).filmlista.size(); j++){
- System.out.println(szineszek.get(i).filmlista.get(j));
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement