공부하기/백준

[Python] 백준 풀기 7567 - 그릇

XEV 2023. 2. 5. 23:32

파이썬 백준 7567번

브론즈 2

https://www.acmicpc.net/problem/7567

 

7567번: 그릇

그릇을 바닥에 놓았을 때 그 높이는 10cm 이다. 그런데 두 개의 그릇을 같은 방향으로 포개면 그 높이는 5cm만 증가된다. 만일 그릇이 서로 반대방향으로 쌓이면 높이는 그릇만큼, 즉 10cm 늘어난다.

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 구현, 문자열

 

 

 

 

 

문제 풀기

그릇의 정보를 리스트에 입력하여 현재 리스트의 값과 다음 리스트의 값을 비교하여 판별한다.

전체 리스트 길이에서 하나를 뺀 위치까지 반복문을 돌리면서,

현재 index 그릇과 다음 index 그릇의 모양이 같으면 +5, 모양이 다르면 +10 을 누적해 더해간다.

 

 

 

 

 

코드 보기

import sys
inputdata = sys.stdin.readline


def fnBowlsHeight(bowls):
    bHeight = 10 # 제일 처음 놓여진 그릇 높이.
    for i in range (len(bowls) - 1):
        if bowls[i] == bowls[i + 1]: # 현재 그릇과 다음 그릇이 같은 방향이면.
            bHeight += 5 # 높이 5 더하기..
        elif bowls[i] != bowls[i + 1]: # 현재 그릇과 다음 그릇이 다른 방향이면.
            bHeight += 10 # 높이 10 더하기.
    
    print(bHeight)


if __name__ == "__main__":
    bowls = list(map(str, inputdata().strip()))
    
    fnBowlsHeight(bowls)