https://www.acmicpc.net/problem/7567
[문제 접근]
그릇을 바닥에 놓았을 때 그 높이는 10cm 이다. → 그릇 하나에 10cm 즉 첫 그릇은 10cm
그런데 두 개의 그릇을 같은 방향으로 포개면 그 높이는 5cm만 증가된다.
→ 이전 그릇과 현재 그릇의 방향이 같다면 5cm 증가 ex) '(('= 10+5=15cm
만일 그릇이 서로 반대방향으로 쌓이면 높이는 그릇만큼, 즉 10cm 늘어난다.
→ 이전 그릇과 현재 그릇의 방향이 반대라면 10cm 증가 ex) '()'= 10+10=20cm
[정답]
1. 리스트 bowl에 그릇을 입력받는다.
2. 그릇의 높이 sum을 정의한다.
3. for문을 돌면서 그릇의 방향을 비교한다. 만약 첫그릇이라면 sum+=10을 해준다. 만약 이전 그릇과 현재 그릇의 방향이 같다면 즉 bowl[i-1]==bowl[i]이라면 sum+=5를 한다. 그 외의 경우 즉 이전 그릇과 현재 그릇의 방향이 반대라면 sum+=10을 해준다.
4. 최종적으로 그릇의 높이 sum을 출력한다.
'알고리즘 공부 > 백준 > Python3' 카테고리의 다른 글
[백준 파이썬] #9506: 약수들의 합 (0) | 2021.02.01 |
---|---|
[백준 파이썬] #10988: 팰린드롬인지 확인하기 (0) | 2021.02.01 |
[백준 파이썬] #10886: 0=not cute/1=cute (0) | 2021.01.29 |
[백준 파이썬] #10102: 개표 (0) | 2021.01.29 |
[백준 파이썬] #5635: 생일 (0) | 2021.01.29 |