Esse exercício pede para resolvermos usando o HashSet
. O HashSet é na verdade um tipo de lista que não repete objetos e isso vai facilitar a resolução do nosso problema.
A partir de um input de um integer t
, recebemos um número t de pares, podendo ser repetidos ou não. Vejamos o exemplo:
5
john tom
john mary
john tom
mary anna
mary anna
Temos 5 pares (delimitados por t) e alguns estão repetidos. Precisamos filtrar esses pares e contabilizar apenas os que não se repetem. No exemplo acima isso significa que precisamos ignorar um dos "john tom" e do "mary anna".
O output precisa mostrar a contabilidade de pares únicos e fica assim:
1
2
2
3
3
Para fazer isso, seguimos o passo a passo:
- Fazemos um
HashSet<String> hashset = new HashSet<>();
, de acordo com a sintaxe do HashSet - Fazemos um
for
que itera a quantidade de pares únicos, ficando assim:
HashSet<String> hashset = new HashSet<>();
for (int i = 0; i < t; i++){
hashset.add(pair_left[i] + " " + pair_right[i]);
System.out.println(hashset.size());
}
Dessa forma, cada par que se forma ocupará uma posição no HashSet e ele não aceitará pares repetidos!
======
Referências
HashSet : Oracle
============
Essa publicação faz parte de uma série de exercícios resolvidos em Java no HackerRank. Acesse a série completa:
- HackerRank #6 | Scanner e End-of-file
- HackerRank #7 | Int to String / String to Int
- HackerRank #8 | Date and Time
- HackerRank #9 | Static Initializer Block
- HackerRank #10 | Currency Formatter
- HackerRank #11 | DataTypes
- HackerRank #12 | Strings Introduction
- HackerRank #13 | Substring Comparisons
- HackerRank #14 | Abstract Class
- HackerRank #18 | BigInteger
- HackerRank #19 | Loops II
- HackerRank #20 | String Reverse
- HackerRank #23 | Instanceof keyword
- HackerRank #26 | Generics
- HackerRank #27 | 1D Array
- HackerRank #28 | Anagrams
- HackerRank #33 | Arraylist
- HackerRank #34 | Exception Handling Try / Catch
- HackerRank #36 | Exception Handling
- HackerRank #37 | List
- HackerRank #38 | SubArray
- HackerRank #39 | HashSet
- HackerRank #40 | Java Dequeue
Top comments (0)