백준 2941 : 크로아티아 알파벳 - 파이썬

낙원·2022년 11월 11일
1

Baekjoon

목록 보기
4/15
post-thumbnail

문제


ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 최대 100글자의 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력

코드

x = input()
cnt = 0
i = 0

while i < len(x):

   if i == len(x) - 1:
      cnt += 1
      break
   
   elif x[i] == 'c':
      if x[i+1] == '=' or x[i+1] == '-':
         cnt += 1
         i += 1
      else:
         cnt += 1

   elif x[i] == 'l' and x[i+1] == 'j':
      cnt += 1
      i += 1

   elif x[i] == 'n' and x[i+1] == 'j':
      cnt += 1
      i += 1

   elif x[i] == 's' and x[i+1] == '=':
      cnt += 1
      i += 1

   elif x[i] == 'd':
      if x[i+1] == '-':
         cnt += 1
         i += 1
      elif i + 2 < len(x) and x[i+1] == 'z' and x[i+2] == '=':
         cnt += 1
         i += 2
      else:
         cnt += 1

   elif x[i] == 'z' and x[i + 1] == '=':
      cnt += 1;
      i += 1

   else:
      cnt += 1

   i += 1

print(cnt)

코드를 보면 알겠지만 그냥 하나하나 경우를 모두 입력해서 해결했다;;
인덱스 에러가 발생해서 이번 스터디 문제 중 가장 어려웠다ㅜㅠ

한 글자일 때 예외 조건을 넣고 i+2 < len(x) 조건을 넣어서 해결했다.

c언어로 풀 때는 이런 것들도 무시하고 그냥 코드가 작동했는데 확실히 파이썬이 좋을 때도 있지만 이런 것들은 약간 귀찮은 것 같다 :D
🤣🤣🤣🤣🤣

0개의 댓글