programming/알고리즘 풀이
[leetcode] 929. Unique Email Addresses
몽구스_
2021. 6. 21. 19:28
728x90
반응형
Unique Email Addresses - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
간단히 말하자면,
아이디의 .이 있어도 없어도 같은 아이디로 생각하고
+이후부터는 아이디를 무시하여 고유한 이메일의 종류 갯수를 출력하는 문제이다.
class Solution {
public int numUniqueEmails(String[] emails) {
HashSet<String> R = new HashSet<>();
for(int i = 0; i < emails.length; i++) {
StringBuilder sb = new StringBuilder();
int last = emails[i].indexOf("@");
for(int j = 0; j < last; j++) {
if(emails[i].charAt(j) == '+') {
break;
}
else if(emails[i].charAt(j) != '.') {
sb.append(emails[i].charAt(j));
}
}
sb.append(emails[i].substring(last, emails[i].length()));
R.add(sb.toString());
}
return R.size();
}
}
고유한 이메일의 갯수를 세는 것이기 때문에 중복 허용이 안되는 HashSet을 사용했다.
StringBuilder를 통해 .과 +의 특성을 고려한 이메일을 뽑아내어 set에 추가하였다.
쉬운 난이도의 문제였다.
728x90
반응형