728x90
https://www.acmicpc.net/problem/6996
문제 풀이
private boolean solveAnagrams(String first, String second) {
if (first.length() != second.length()) return false;
int alphabet[] = new int[26];
for (char c : first.toCharArray())
alphabet[c - 'a']++;
for (char c : second.toCharArray()) {
alphabet[c - 'a']--;
if (alphabet[c - 'a'] < 0) return false;
}
return true;
}
다른 풀이 참고
더보기
private boolean solveAnagrams(String first, String second) {
if (first.length() != second.length()) return false;
char[] c1 = first.toCharArray(), c2 = second.toCharArray();
Arrays.sort(c1);
Arrays.sort(c2);
return Arrays.equals(c1, c2);
}
반응형
'코딩 문제 풀기 ( Algorithm problem solving ) > 백준 온라인 저지 ( BOJ )' 카테고리의 다른 글
[백준(Baekjoon)][자바(java)] 7587 : Anagram (0) | 2021.11.07 |
---|---|
[백준(Baekjoon)][자바(java)] 1919 : 애너그램 만들기 (0) | 2021.11.06 |
[백준(Baekjoon)][자바(java)] 2578 : 빙고 (0) | 2021.11.06 |
[백준(Baekjoon)][자바(java)] 15666 : N과 M (12) / 백트래킹 (0) | 2021.09.02 |
[백준(Baekjoon)][자바(java)] 15665 : N과 M (11) / 백트래킹 (0) | 2021.09.02 |