코딩테스트 준비 Day 2

Seok·2023년 2월 15일
0

[백준: 1181] 단어정렬

# 난이도: 실버 5
# 알고리즘 유형: 문자열, 정렬

"""
시작시간: 01:58
종료시간: 02:29
"""

n = int(input())

# key=문자, value=해당 문자열의 길이
arr = dict()
for _ in range(n):
    a = input()
    arr[a] = len(a)

# 길이를 바탕으로 먼저 정렬하고, 사전순으로 정렬
arr = sorted(arr.items(), key=lambda x: (x[1], x[0]))

# key값만 출력
for k in arr:
    print(k[0])

[백준: 1259] 팰린드롬수

# 난이도: 브론즈 1
# 알고리즘 유형: 구현, 문자열

"""
시작시간: 02:30
종료시간: 02:42
"""

while True:
    a = list(input())
    if a == ["0"]:
        break

    # 길이가 홀수일 때
    if len(a) % 2:
        # 가운데 수를 빼고 양 옆으로 같은지 판별(우측은 역순으로 만들고 슬라이싱)
        if a[: len(a) // 2] == a[: len(a) // 2 : -1]:
            print("yes")
        else:
            print("no")

    # 길이가 짝수일 때
    else:
        # 절반을 기준으로 양 옆으로 같은지 판별(우측은 역순으로 만들고 슬라이싱)
        if a[: len(a) // 2] == a[: len(a) // 2 - 1 : -1]:
            print("yes")
        else:
            print("no")
profile
응애 CV 개발자

0개의 댓글