[오늘의 백준] 다이얼, 크로아티아 알파벳, 그룹단어체커, 음계, 검증수

한지원·2021년 1월 6일
1

오늘은 뭔가 하루가 굉장히 짧다.. 그리 많은 일을 하진 않았는데 정신이 없어서 그런지 하루가 정돈되지 않은 느낌이었다.
매일 하루를 시작하기 전에 계획은 짜지만 그 계획을 모두 수행한적은 손에 꼽는다 ㅋ
그래서 좀 더 무리하게 계획을 짰더니 스스로 부담을 느꼈는가보다. 내일은 진심모드로 짜야지..
오늘은 백준에서 class1의 남은 모든 문제를 다 풀어버렸다. 어렵진 않지만 이번에도 더 효율적인 방법을 생각해보다가 시간을 꽤 많이 보냈다.

사실 부끄럽지만 학교에 다니면서도 알고리즘 공부를 할 때 더 나은 방법에 대해서 고민하며 짠 기억이 잘 없다. 그래서 필요 이상으로 긴 코드도 많았고 그런건 주석이 빼곡히 적혀있었다. 이제와서 몸에 익은 무언가를 바꿔보려니 좀 버벅대는 감이 있지만 그래도 방법을 하나씩 알아가는 재미가 쏠쏠하다.

오늘은 그냥 문제 기록만 하려 한다. 어제의 내가 오늘의 나에게 리뷰를 미뤘으니..ㅋ 오늘의 나는 내일의 나에게 ..


5622. 다이얼

word = input()
number_dict = {'2': 'ABC', '3': 'DEF', '4': 'GHI', '5': 'JKL',
               '6': 'MNO', '7': 'PQRS', '8': 'TUV', '9': 'WXYZ'}
number = ''
for i in word:
    for j in range(2, 10):
        alpha = number_dict[str(j)]
        if alpha.count(i) == 1:
            number += str(j)
            break
sum = 0
for i in number:
    sum += int(i)+1
print(sum)

2941. 크로아티아 알파벳

Croatia = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=', 'z=']
a = input()
for i in Croatia:
    a = a.replace(i, 'a')
print(len(a))

1316.그룹 단어 체커

n = int(input())
cnt = 0
for i in range(n):
    word = input()
    simple_word = word[0]
    for j in word:
        if simple_word[len(simple_word)-1] != j:
            simple_word += j
    if len(set(simple_word)) == len(simple_word):
        cnt += 1
print(cnt)

2920. 음계

play_note = list(map(int, input().split()))
ascending = [1, 2, 3, 4, 5, 6, 7, 8]
print('ascending') if ascending == play_note else print('descending') if list(
    reversed(ascending)) == play_note else print('mixed')

2474. 검증수

unique_num = list(map(int, input().split()))
sum = 0
for i in unique_num:
    sum += i ** 2
print(sum%10)

귀여운 자랑을 해보자면 ㅋㅋ

금장이 달렸다 ㅋㅋㅋㅋㅋ
사실 이게 어떻게 보이나 궁금해서 졸린 와중에 남은 문제를 다 풀어보았다..ㅎ
클래스1이지만 나름 뿌듯..ㅋ

내일은 그동안 문제 풀면서 알게 된 파이썬 기능들을 전반적으로 공부해보려 한다.
고로 내일의 백준은 없다❤

0개의 댓글