백준 2855번은 주사위게임 문제입니다.
창영이와 성덕이가 기본점수 100점을 두고 주사위를 던져
주사위 눈이 작은 사람이 큰 사람의 눈만큼 점수를 빼주는 문제입니다.
https://www.acmicpc.net/problem/10103
<코드>
cy, sd = 100, 100
n = int(input())
import sys
for i in range(n):
cy_sd = list(map(int, sys.stdin.readline().split()))
if cy_sd[0] > cy_sd[1]:
sd -= cy_sd[0]
elif cy_sd[0] == cy_sd[1]:
continue
else:
cy -= cy_sd[1]
print(cy)
print(sd)
(1) cy는 창영, sd는 상덕이고, 각각 기본점수 100씩 설정해줍니다.
(2) 테스트 실행 횟수를 n만큼 입력받고
(3) sys 모듈을 import 받은 후
(4)~(11) 반복문 for문을 이용해서 range(n)만큼(테스트 실행 횟수만큼) 주사위게임을 진행합니다.
(5) 창영이와 상덕이의 주사위 점수를 한 줄에 공백을 기준으로 입력해야하므로
list와 map 함수를 이용하여 입력값을 list 자료형으로 만들어줍니다.
split 메서드
문자열.split("특정 문자")의 구조로 사용합니다.
문자열의 특정 문자를 기준으로 나눠줍니다.(특정 문자는 삭제됩니다.)
# split(나누다, 분열시키다)
map 함수
map(함수, 반복 가능한 객체)의 구조로 사용합니다.
반복 가능한 객체의 요소들에 함수를 적용하는 역할을 해준다고 이해하면 됩니다.
-
여기서 중요한 건, list()로 한 번 감싸줘야 리스트 자료형으로 바뀔 수 있다는 점입니다.
cy_sd[0]은 창영이가 던진 주사위의 눈
cy_sd[1]은 상덕이가 던진 주사위의 눈이 되며
각각의 조건문의 조건에 따라 창영이와 상덕이의 점수를 계산해주면 됩니다.
코린이 대학생의 풀이였습니다.
풀이에 오류가 있거나 빈약한 부분이 있다면 얼마든지 댓글 남겨주시기 바랍니다.
https://like-a-happy-cat.tistory.com/
https://blog.naver.com/snake6862
'프로그래밍 > 백준' 카테고리의 다른 글
[파이썬(Python)] 백준 11557번 Yangjojang of The Year (0) | 2021.10.11 |
---|---|
[파이썬(Python)] 백준 10214 Baseball (0) | 2021.10.10 |
[파이썬(Python)] 백준 10162번 전자레인지 (0) | 2021.10.08 |
[파이썬(Python)] 백준 2163번 초콜릿 자르기 (0) | 2021.10.07 |
[파이썬(Python)] 백준 3046번 R2 : 평균을 활용한 추론 (0) | 2021.10.07 |