[ 문제 ]
https://www.acmicpc.net/problem/1213
반례)
AZ -> I'm Sorry Hansoo
AAA -> AAA
ZAAZ -> AZZA
[ 제출코드 ]
[ 풀이 ]
- 각 알파벳 개수 계산
예) ABCAB -> A: 2, B: 2, C: 1 - 개수가 1개인 알파벳이 2개 이상인 경우, "I'm Sorry Hansoo" 출력
- 개수가 1개인 알파벳이 1개만 존재하는 경우, 가장 가운데에 그 알파벳 넣기
중간의 앞 부분은 사전 순으로 놓고 그 앞 부분을 거꾸로 해서 뒷 부분을 채우기 - 개수가 2n개인 알파벳으로만 이루어진 경우, (각 알파벳의 개수) / 2 개를 사전 순으로 앞에 놓고 그 앞 부분을 거꾸로 해서 뒷 부분을 채우기
[ 이야기 ]
n개만큼 문자열을 붙여야할 때는 String에서 제공하는 repeat 메서드를 사용하면 됩니다.
String str = "abc";
str.repeat(3); // abcabcabc
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/repeat
'Algorithm 문제풀기 > Baekjoon' 카테고리의 다른 글
[JAVA] 안전 영역 ::: BFS (0) | 2024.04.03 |
---|---|
[JAVA] 행렬 ::: 그리디 알고리즘 (0) | 2024.03.31 |
[JAVA] 수리공 항승 ::: 그리디 알고리즘 (0) | 2023.09.28 |
[JAVA] 강의실 배정 ::: 그리디, 정렬, 우선순위 큐 (0) | 2023.09.09 |
[JAVA] 거스름돈 ::: 그리디 알고리즘 (0) | 2023.09.04 |