Skip to content

Conversation

@oncsr
Copy link
Contributor

@oncsr oncsr commented Feb 12, 2025

🧷 문제 링크

https://www.acmicpc.net/problem/20210

🧭 풀이 시간

40분

👀 체감 난이도

✏️ 문제 설명

문자열 $N$개를 natural sort한 결과를 출력해보자.

  1. 문자열은 알파벳 대소문자와 숫자로만 이루어져 있다.
  2. 숫자열이 알파벳보다 앞에 오고, 알파벳끼리는 AaBbCc...XxYyZz의 순서를 따른다.
  3. 문자열을 비교하는 중 숫자가 있을 경우 그 다음에 오는 숫자를 최대한 많이 묶어 한 단위로 비교한다. 예를 들어 "a12bc345"는 "a", "12", "b", "c", "345"의 다섯 단위로 이루어져 있다.
  4. 숫자열끼리는 십진법으로 읽어서 더 작은 것이 앞에 온다. 이때 예제 2에서와 같이 값이 263을 초과할 수 있다.
  5. 같은 값을 가지는 숫자열일 경우 앞에 따라붙는 0의 개수가 적은 것이 앞에 온다.

🔍 풀이 방법

  • 진짜 저대로 구현하면 된다.
  • 숫자열 비교에는 BigInteger를 사용했다.

⏳ 회고

구현이 너무 빡셈

@ShinHeeEul ShinHeeEul merged commit 3cd0fd1 into main Feb 12, 2025
1 check passed
@oncsr oncsr added the success 👍 해설을 보지 않고 풀었을 때 label Feb 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

success 👍 해설을 보지 않고 풀었을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants