/* package whatever; // don't place package name! */
import java.util.*;
import java.util.stream.Collectors;
import java.util.function.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
String input
= "tacocat backwards is tacocat"; String[] words
= input.
split( " " ); .stream( words )
.collect(
Collectors.groupingBy(
Function.identity() ,
Collectors.counting()
)
);
System.
out.
println( wordCount
);
wordCount
.entrySet()
.stream()
.filter(
entry -> entry.getValue() > 1
)
.collect(
Collectors.toMap(
entry -> entry.getKey() ,
entry -> entry.getValue()
)
);
System.
out.
println( dupCount
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS51dGlsLnN0cmVhbS5Db2xsZWN0b3JzOwppbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVN0cmluZyBpbnB1dCA9ICJ0YWNvY2F0IGJhY2t3YXJkcyBpcyB0YWNvY2F0IjsKCQlTdHJpbmdbXSB3b3JkcyA9IGlucHV0LnNwbGl0KCAiICIgKTsKCQlNYXAgPCBTdHJpbmcsIExvbmcgPiB3b3JkQ291bnQgPQoJCSAgICAgICAgQXJyYXlzCgkJICAgICAgICAgICAgICAgIC5zdHJlYW0oIHdvcmRzICkKCQkgICAgICAgICAgICAgICAgLmNvbGxlY3QoCgkJICAgICAgICAgICAgICAgICAgICAgICAgQ29sbGVjdG9ycy5ncm91cGluZ0J5KAoJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnVuY3Rpb24uaWRlbnRpdHkoKSAsCgkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb2xsZWN0b3JzLmNvdW50aW5nKCkKCQkgICAgICAgICAgICAgICAgICAgICAgICApCgkJICAgICAgICAgICAgICAgICk7CgkJU3lzdGVtLm91dC5wcmludGxuKCB3b3JkQ291bnQgKTsKCQkKCQlNYXAgPCBTdHJpbmcsIExvbmcgPiBkdXBDb3VudCA9CgkJICAgICAgICB3b3JkQ291bnQKCQkgICAgICAgICAgICAgICAgLmVudHJ5U2V0KCkKCQkgICAgICAgICAgICAgICAgLnN0cmVhbSgpCgkJICAgICAgICAgICAgICAgIC5maWx0ZXIoCgkJICAgICAgICAgICAgICAgICAgICAgICAgZW50cnkgLT4gZW50cnkuZ2V0VmFsdWUoKSA+IDEKCQkgICAgICAgICAgICAgICAgKQoJCSAgICAgICAgICAgICAgICAuY29sbGVjdCgKCQkgICAgICAgICAgICAgICAgICAgICAgICBDb2xsZWN0b3JzLnRvTWFwKAoJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnkgLT4gZW50cnkuZ2V0S2V5KCkgLAoJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnkgLT4gZW50cnkuZ2V0VmFsdWUoKQoJCSAgICAgICAgICAgICAgICAgICAgICAgICkKCQkgICAgICAgICAgICAgICAgKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIGR1cENvdW50ICk7Cgl9Cn0=