/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
// your code goes here
}
}
class Solution {
public int firstUniqChar
(String s
) { int n = s.length();
// build hash map : character and how often it appears
for (int i = 0; i < n; i++) {
char c = s.charAt(i);
count.put(c, count.getOrDefault(c, 0) + 1);
}
// find the index
for (int i = 0; i < n; i++) {
if (count.get(s.charAt(i)) == 1)
return i;
}
return -1;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCX0KfQoKY2xhc3MgU29sdXRpb24gewogICAgcHVibGljIGludCBmaXJzdFVuaXFDaGFyKFN0cmluZyBzKSB7CiAgICAgICAgSGFzaE1hcDxDaGFyYWN0ZXIsIEludGVnZXI+IGNvdW50ID0gbmV3IEhhc2hNYXA8Q2hhcmFjdGVyLCBJbnRlZ2VyPigpOwogICAgICAgIGludCBuID0gcy5sZW5ndGgoKTsKICAgICAgICAvLyBidWlsZCBoYXNoIG1hcCA6IGNoYXJhY3RlciBhbmQgaG93IG9mdGVuIGl0IGFwcGVhcnMKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgICAgICBjaGFyIGMgPSBzLmNoYXJBdChpKTsKICAgICAgICAgICAgY291bnQucHV0KGMsIGNvdW50LmdldE9yRGVmYXVsdChjLCAwKSArIDEpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBmaW5kIHRoZSBpbmRleAogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgICAgIGlmIChjb3VudC5nZXQocy5jaGFyQXQoaSkpID09IDEpIAogICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgIH0KfQ==