๐ท๐ผ๋ชจ์ฌ๋ด์ ๊ฐ๋ฐ์์ฒ๐ท๐ผ
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 6์ผ์ฐจ - ๋ฌธ์์ด ๋๋๊ธฐ ๋ณธ๋ฌธ
๊ฐ๋ฐ/์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด JAVA
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 6์ผ์ฐจ - ๋ฌธ์์ด ๋๋๊ธฐ
์์ผ์ด 2023. 8. 21. 22:20๋ฐ์ํ
๋ฌธ์
https://level.goorm.io/exam/195688/%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%82%98%EB%88%84%EA%B8%B0/quiz/1
๊ตฌ๋ฆLEVEL
๋์ด๋๋ณ ๋ค์ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํจ์ผ๋ก์จ SW ์ญ๋์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
level.goorm.io
์ฝ๋
import java.util.*;
class Main {
public static void main(String[] args) throws Exception {
Scanner in= new Scanner(System.in);
int N = in.nextInt();
int answer = 0;
String str = in.next();
HashSet<String> arr = new HashSet<>();
int max = N-2;
for(int i=0; i<str.length(); i++){
for(int j=i; j<str.length(); j++){
String t = str.substring(i, j+1);
if(t.length()<=max){
arr.add(t);
}
}
}
ArrayList<String> sortedSubstrings = new ArrayList<>(arr);
Collections.sort(sortedSubstrings);
HashMap<String, Integer> map = new HashMap<>();
for (int i = 0; i < sortedSubstrings.size(); i++) {
map.put(sortedSubstrings.get(i), i + 1);
}
int tmp = 0;
for (int i = 1; i < N; i++) {
for (int j = i + 1; j < N; j++) {
tmp = map.get(str.substring(0, i));
tmp += map.get(str.substring(i, j));
tmp += map.get(str.substring(j, N));
answer = Math.max(answer, tmp);
}
}
System.out.println(answer);
}
}
์ฃ ํผ ๊ท์ฐฎ์๋ ..
'๊ฐ๋ฐ > ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 18์ผ์ฐจ - ์ค์ฒฉ์ (0) | 2023.09.07 |
---|---|
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 7์ผ์ฐจ - ๊ตฌ๋ฆ์ฐพ๊ธฐ๊น๋ฐ (0) | 2023.08.22 |
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 5์ผ์ฐจ - ์ด์ง์ ์ ๋ ฌ (0) | 2023.08.18 |
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 4์ผ์ฐจ - ์๋ฒฝํ ํ๋ฒ๊ฑฐ ๋ง๋ค๊ธฐ (0) | 2023.08.17 |
[๊ตฌ๋ฆํค์ฑ๋ฆฐ์ง/JAVA] 3์ผ์ฐจ - ํฉ ๊ณ์ฐ๊ธฐ (0) | 2023.08.16 |
Comments