https://school.programmers.co.kr/learn/courses/30/lessons/
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
1. ๋ฌธ์
์์ด ๋๋ง์๊ธฐ
1) ์ค๋ณต๋๋ฉด ํ๋ฝ
2) ์์ ๋งจ๋ ๋ฌธ์์ ๋ค์ ๋งจ์๋ฌธ์๊ฐ ์ผ์นํด์ผ ์ด์ด์ง, ๋ค๋ฅด๋ฉด ํ๋ฝ
2. ํ์ด
์ด์ค for๋ฌธ์ผ๋ก ํ๋ฉด ๋นํจ์จ์ ์ด๋ค.
HashSet์ ํ์ฉํ์ฌ ์ด์คfor๋ฌธ์ ์ฐ์ง ์์๋ค.
1. HashSet์ ๋งจ ์ฒซ ๋จ์ด๋ถํฐ ๋ฃ๊ณ ์์ํ์ฌ for๋ฌธ์ 1๋ถํฐ n-1๋ฒ๊น์ง ๋๋ค.
2. ํ์ฌ words๊ฐ HashSet์ contains ๋๊ฑฐ๋, ํ์ฌ words์ ๋งจ ์๋ฌธ์์ ์ด์ words์ ๋งจ ๋ค ๋ฌธ์๊ฐ ๋ค๋ฅด๋ฉด ํ๋ฝ
3. ์ฝ๋
package p230109;
import java.io.*;
import java.util.*;
class PG_์์ด๋๋ง์๊ธฐ {
public static void main(String[] args) {
int n = 2;//3,5,2
String[] words =
{"abb", "baa", "ccc", "cda", "abb"};
// {"hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"};
// {"hello", "one", "even", "never", "now", "world", "draw"};
solution(n, words);
}
static int[] solution(int n, String[] words) {
int[] answer = new int[2];
HashSet<String> set = new HashSet<String>();
set.add(words[0]);
for (int i=1; i<words.length; i++) {
String last = words[i-1];
if (set.contains(words[i]) || words[i].charAt(0)!=last.charAt(last.length()-1)) {
answer[0] = i%n+1;
answer[1] = i/n+1;
break;
}
set.add(words[i]);
}
return answer;
}
}
4. ์ฌ๋ด
์ค๋๊ฑธ๋ ธ๋ค..
๊ทธ๋ฆฌ๊ณ ์ด์ค for๋ฌธ์ HashSet์ผ๋ก ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ์ฒ์ ์๊ฒ๋์๋ค.
'Algorithm > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ์ด์ค์ฐ์ ์์ํ - Java (0) | 2023.08.17 |
---|---|
[Programmers] ์ ํ์ ์๊ฐ์ด๋ - Java (0) | 2023.08.11 |
[Programmers] ๊ตฌ๋ช ๋ณดํธ - Java (0) | 2023.07.10 |
[Programmers] ์นดํซ - Java (0) | 2023.07.09 |
[Programmers] ๊ทค๊ณ ๋ฅด๊ธฐ - Java (0) | 2023.01.04 |