본문 바로가기
프로그래밍/알고리즘 & 자료구조

백준 10810 : 공넣기 with 파이썬

by Play_With 2024. 1. 23.
반응형

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

 

10810번: 공 넣기

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이

www.acmicpc.net

 

n,m=map(int,input().split())
nums=[list(map(int, input().split())) for _ in range(m)]
rs=[0]*(n+1)

for x,y,z in nums:
    rs[x:y+1]=[z]*(y+1-x)
print(' '.join(map(str, rs[1:])))

 

 

# 포인트

1. 2개 이상 숫자로 받아올때는 map(int, input())

2. 슬라이싱에 할당할 경우, 오른쪽은 iterable한 값이 와야함. 그렇지 않을경우, TypeError: can only assign an iterable

b=[0]*4

1. b[:2]=3의 경우, TypeError: can only assign an iterable
2. b[:2]=[3]의 경우, 0,1의 인덱스에 해당하는 값이 3으로 바뀜 [3,0,0]
3. b[:2]=[3]*(2-0)으로 해줘야 [3,3,0,0]으로 하나씩 변경될 수

 

3. print()의 옵션

ⓐsep=' ' : 출력물 사이의 입력값으로, 기본값은 공백

ⓑend='\n' : 출력이 끝난 뒤의 입력값으로, 기본값은 개행

3-b. 프린트 옵션을 사용한 문제

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

 

10103번: 주사위 게임

첫 라운드는 상덕이의 승리이다. 따라서 창영이는 6점을 잃게 된다. 두 번째 라운드는 두 사람의 숫자가 같기 때문에, 아무도 점수를 잃지 않고 넘어간다. 세 번째 라운드의 승자는 창영이이기

www.acmicpc.net

r=int(input())
nums=[ list(map(int, input().split()))  for _ in range(r)]
a, b=100,100
for x, y in nums:
    if x<y : a=a-y
    elif x>y : b=b-x

print(a,b ,sep='\n')
반응형

댓글