Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
Tags
- 수학
- level2
- level0
- dict
- programmers
- 프로그래머스
- 가상메모리
- BOJ
- N과M
- 브루트포스
- BFS
- 스택
- 재귀
- level1
- 다익스트라
- dfs
- 가상메모리 관리
- 운영체제
- 백준
- level3
- 구현
- MYSQL
- 다이나믹 프로그래밍
- 딕셔너리
- 코딩테스트
- 파이썬
- DP
- python
- 그리디
- 힙
Archives
- Today
- Total
동캄의 코딩도장
백준 1213 [펠린드롬 만들기] 파이썬 본문
https://www.acmicpc.net/problem/1213
1213번: 팰린드롬 만들기
첫째 줄에 문제의 정답을 출력한다. 만약 불가능할 때는 "I'm Sorry Hansoo"를 출력한다. 정답이 여러 개일 경우에는 사전순으로 앞서는 것을 출력한다.
www.acmicpc.net
import sys
input = sys.stdin.readline
lst = list(map(str, input().rstrip()))
count = [0]*(26)
for alpha in lst:
count[ord(alpha)-65] += 1
odd = 0
temp = []
for i in range(26):
if count[i] % 2 == 1:
odd += 1
temp.append(chr(i+65))
if odd > 1:
print("I'm Sorry Hansoo")
else:
l = []
r = []
for i in range(26):
for j in range(count[i]//2):
l.append(chr(i+65))
r.append(chr(i+65))
r.reverse()
print(''.join(l+temp+r))
'코테 > BOJ' 카테고리의 다른 글
백준 2166 [다각형의 면적] 파이썬 (0) | 2022.02.12 |
---|---|
백준 12852 [1로 만들기 2] (0) | 2022.02.11 |
백준 20937 [떡국] 파이썬 (0) | 2022.02.11 |
백준 20363 [당근 키우기] 파이썬 (0) | 2022.02.11 |
백준 3135 [라디오] 파이썬 (0) | 2022.02.11 |