본문 바로가기
알고리즘/스택 \ 큐 \ 덱

#14 [파이썬] 백준 2346번 문제: 풍선 터뜨리기

by 채채씨 2021. 4. 14.
728x90
반응형

<문제>

www.acmicpc.net/problem/2346

 

2346번: 풍선 터뜨리기

첫째 줄에 자연수 N(1≤N≤1,000)이 주어진다. 다음 줄에는 차례로 각 풍선 안의 종이에 적혀 있는 수가 주어진다. 편의상 0은 적혀있지 않다고 가정하자.

www.acmicpc.net


 

<소스코드>

import sys

n = int(input())

result = []

balloon = list(map(int, sys.stdin.readline().split()))
idx = [x for x in range(1, n+1)]

i = 0
tmp = balloon.pop(i)
result.append(idx.pop(i))

while balloon:
    if tmp < 0:
        i = (i + tmp) % len(balloon)
    else:
        i = {i + (tmp - 1)} % len(balloon)
    tmp = balloon.pop(i)
    result.append(idx.pop(i))

print(*result)

 

<NOTE>

 

1. 나눗셈 연산자

· 나눗셈 하기: 나누어지는 수/나누는 수

a = 7
b = 4

print(a/b) #1.75

· 나눗셈 몫 구하기: 나누어지는 수//나누는 수

a = 7
b = 4

print(a//b) #1

· 나눗셈 나머지 구하기: 나누어지는 수%나누는 수

a = 7
b = 4

print(a%b) #3
print(b%a) #4   

#★이 용도로 자주 사용됨★: 나누는 수가 더 크면 원래 자신의 값을 갖는다.

· 나눗셈 몫과 나머지 각각 구하기: divmod(나누어지는 수, 나누는 수) 

a = 7
b = 4

print(divmod(a, b)) #(1, 3)
728x90
반응형

댓글