/* package whatever; // don't place package name! */
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
/* Одинаковые слова в списке
Ввести с клавиатуры в список 20 слов. Нужно подсчитать количество одинаковых слов в списке.
Результат нужно представить в виде словаря Map<String, Integer>, где первый параметр – уникальная строка,
а второй – число, сколько раз данная строка встречалась в списке.
Вывести содержимое словаря на экран.
В тестах регистр (большая/маленькая буква) влияет на результат.
*/
class Solution
{
{
ArrayList<String> words = new ArrayList<String>();
for (int i = 0; i < 20; i++)
{
words.add(reader.readLine());
}
Map
<String, Integer
> map
= countWords
(words
);
for (Map.
Entry<String, Integer
> pair
: map.
entrySet()) {
System.
out.
println(pair.
getKey() + " " + pair.
getValue()); }
}
public static Map
<String, Integer
> countWords
(ArrayList
<String
> list
) {
HashMap
<String, Integer
> result
= new HashMap
<String, Integer
>();
for (int z = 0; z<list.size();z++ ){
int kol = 1;
if (list.size()>1)
{
for (int b = z + 1; b < list.size(); )
{
if (temp2.equals(temp))
{
kol++;
} else b++;
}
}
result.put(temp, kol);
}
return result;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEuaW8uQnVmZmVyZWRSZWFkZXI7CmltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtUmVhZGVyOwppbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKaW1wb3J0IGphdmEudXRpbC5IYXNoTWFwOwppbXBvcnQgamF2YS51dGlsLk1hcDsKCi8qINCe0LTQuNC90LDQutC+0LLRi9C1INGB0LvQvtCy0LAg0LIg0YHQv9C40YHQutC1CtCS0LLQtdGB0YLQuCDRgSDQutC70LDQstC40LDRgtGD0YDRiyDQsiDRgdC/0LjRgdC+0LogMjAg0YHQu9C+0LIuINCd0YPQttC90L4g0L/QvtC00YHRh9C40YLQsNGC0Ywg0LrQvtC70LjRh9C10YHRgtCy0L4g0L7QtNC40L3QsNC60L7QstGL0YUg0YHQu9C+0LIg0LIg0YHQv9C40YHQutC1LgrQoNC10LfRg9C70YzRgtCw0YIg0L3Rg9C20L3QviDQv9GA0LXQtNGB0YLQsNCy0LjRgtGMINCyINCy0LjQtNC1INGB0LvQvtCy0LDRgNGPIE1hcDxTdHJpbmcsIEludGVnZXI+LCDQs9C00LUg0L/QtdGA0LLRi9C5INC/0LDRgNCw0LzQtdGC0YAg4oCTINGD0L3QuNC60LDQu9GM0L3QsNGPINGB0YLRgNC+0LrQsCwK0LAg0LLRgtC+0YDQvtC5IOKAkyDRh9C40YHQu9C+LCDRgdC60L7Qu9GM0LrQviDRgNCw0Lcg0LTQsNC90L3QsNGPINGB0YLRgNC+0LrQsCDQstGB0YLRgNC10YfQsNC70LDRgdGMINCyINGB0L/QuNGB0LrQtS4K0JLRi9Cy0LXRgdGC0Lgg0YHQvtC00LXRgNC20LjQvNC+0LUg0YHQu9C+0LLQsNGA0Y8g0L3QsCDRjdC60YDQsNC9LgrQkiDRgtC10YHRgtCw0YUg0YDQtdCz0LjRgdGC0YAgKNCx0L7Qu9GM0YjQsNGPL9C80LDQu9C10L3RjNC60LDRjyDQsdGD0LrQstCwKSDQstC70LjRj9C10YIg0L3QsCDRgNC10LfRg9C70YzRgtCw0YIuCiovCgpjbGFzcyBTb2x1dGlvbgp7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB0aHJvd3MgRXhjZXB0aW9uCiAgICB7CiAgICAgICAgQnVmZmVyZWRSZWFkZXIgcmVhZGVyID0gbmV3IEJ1ZmZlcmVkUmVhZGVyKG5ldyBJbnB1dFN0cmVhbVJlYWRlcihTeXN0ZW0uaW4pKTsKCiAgICAgICAgQXJyYXlMaXN0PFN0cmluZz4gd29yZHMgPSBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IDIwOyBpKyspCiAgICAgICAgewogICAgICAgICAgICB3b3Jkcy5hZGQocmVhZGVyLnJlYWRMaW5lKCkpOwogICAgICAgIH0KCiAgICAgICAgTWFwPFN0cmluZywgSW50ZWdlcj4gbWFwID0gY291bnRXb3Jkcyh3b3Jkcyk7CgogICAgICAgIGZvciAoTWFwLkVudHJ5PFN0cmluZywgSW50ZWdlcj4gcGFpciA6IG1hcC5lbnRyeVNldCgpKQogICAgICAgIHsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHBhaXIuZ2V0S2V5KCkgKyAiICIgKyBwYWlyLmdldFZhbHVlKCkpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIE1hcDxTdHJpbmcsIEludGVnZXI+IGNvdW50V29yZHMoQXJyYXlMaXN0PFN0cmluZz4gbGlzdCkKICAgIHsKICAgICAgICBIYXNoTWFwPFN0cmluZywgSW50ZWdlcj4gcmVzdWx0ID0gbmV3IEhhc2hNYXA8U3RyaW5nLCBJbnRlZ2VyPigpOwoKICAgICAgICBmb3IgKGludCB6ID0gMDsgejxsaXN0LnNpemUoKTt6KysgKXsKICAgICAgICAgICAgU3RyaW5nIHRlbXAgPSBsaXN0LmdldCh6KTsKICAgICAgICAgICAgaW50IGtvbCA9IDE7CiAgICAgICAgICAgIGlmIChsaXN0LnNpemUoKT4xKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBmb3IgKGludCBiID0geiArIDE7IGIgPCBsaXN0LnNpemUoKTsgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0cmluZyB0ZW1wMiA9IGxpc3QuZ2V0KGIpOwogICAgICAgICAgICAgICAgICAgIGlmICh0ZW1wMi5lcXVhbHModGVtcCkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBrb2wrKzsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgYisrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3VsdC5wdXQodGVtcCwga29sKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgIH0KCn0=
0YHQu9C+0LLQvi0xCtGB0LvQvtCy0L4tMgrRgdC70L7QstC+LTMK0YHQu9C+0LLQvi00CtGB0LvQvtCy0L4tNQrRgdC70L7QstC+LTYK0YHQu9C+0LLQvi03CtGB0LvQvtCy0L4tOArRgdC70L7QstC+LTkK0YHQu9C+0LLQvi0xMArRgdC70L7QstC+LTExCtGB0LvQvtCy0L4tMTIK0YHQu9C+0LLQvi0xMwrRgdC70L7QstC+LTE0CtGB0LvQvtCy0L4tMTUK0YHQu9C+0LLQvi0xNgrRgdC70L7QstC+LTE3CtGB0LvQvtCy0L4tMTgK0YHQu9C+0LLQvi0xOQrRgdC70L7QstC+LTIwCtGB0LvQvtCy0L4tMjEK
слово-1
слово-2
слово-3
слово-4
слово-5
слово-6
слово-7
слово-8
слово-9
слово-10
слово-11
слово-12
слово-13
слово-14
слово-15
слово-16
слово-17
слово-18
слово-19
слово-20
слово-21