-문제: https://www.acmicpc.net/problem/1213

 

-정답풀이:

갯수가 홀수인 문자가 2개 이상이면 팰린드롬을 못 만든다는 것을 알았다

근데 문자들이라 이걸 디렉토리로 해야하나 고민이 됐다.

그래서 답지를 봤더니 문자를 ord로 숫자로 바꾼 다음 리스트에 저장한 뒤 각 개수를 저장하면된다. 

홀수 개 있는 경우를 count로 또 세고, odd_alpha에 문자를 누적한다. 

count에 따라 나누어 출력하면된다 

 

data=list(input())
data_cnt=[0 for _ in range(26)]
alpha=''
odd_alpha=''

for i in data:
    data_cnt[ord(i)-65]+=1

count=0
for i in range(26):
    if data_cnt[i]%2==1:
        count+=1
        odd_alpha+=chr(i+65)
    alpha+=chr(i+65)*(data_cnt[i]//2)
if count >=2:
    print("I'm Sorry Hansoo")
else:
    print(alpha+odd_alpha+alpha[::-1])

+ Recent posts