[Silver III] 타노스 - 20310
성능 요약
메모리: 31256 KB, 시간: 40 ms
분류
그리디 알고리즘, 문자열
문제 설명
어느 날, 타노스는 0과 1로 이루어진 문자열 S를 보았다. 신기하게도, S가 포함하는 0의 개수와 S가 포함하는 1의 개수는 모두 짝수라고 한다.
갑자기 심술이 난 타노스는 S를 구성하는 문자 중 절반의 0과 절반의 1을 제거하여 새로운 문자열 S′를 만들고자 한다. S′로 가능한 문자열 중 사전순으로 가장 빠른 것을 구하시오.
입력
문자열 S가 주어진다.
출력
S′로 가능한 문자열 중 사전순으로 가장 빠른 것을 출력한다.
N = input()
odd = N.count("1") // 2
even = N.count("0") // 2
N = list(N)
for _ in range(odd):
idx = N.index("1")
N.pop(idx)
N = N[::-1]
for _ in range(even):
idx = N.index("0")
N.pop(idx)
N = N[::-1]
result = "".join(N)
print(result)
'Algorithm > BAEKJOON' 카테고리의 다른 글
[백준 / Python 파이썬] 23351번 - 물 주기 (0) | 2023.07.16 |
---|---|
[백준 / Python 파이썬] 23082번 - 균형 삼진법 (0) | 2023.07.16 |
[백준 / Python 파이썬] 17451번 - 평행 우주 (0) | 2023.07.16 |
[백준 / Python 파이썬] 12842번 - 튀김 소보루 (1) | 2023.07.16 |
[백준 / Python 파이썬] 22994번 - 이미지 축소 (0) | 2023.07.06 |