728x90
반응형
문제
https://www.acmicpc.net/problem/9095
표준 입력을 사용하기 위해 sys 모듈 추가.
테스트 케이스 개수 입력.
import sys
input = sys.stdin.readline
t = int(input())
입력한 숫자만큼 반복.
- 정수 하나 입력.
- 개수 0으로 초기화.
- 개수를 세기 위한 함수 실행.
=> 인자는 0으로 설정.
- 개수 출력.
for _ in range(t):
n = int(input())
count = 0
func(0)
print(count)
개수를 세기 위한 함수 제작.
- 개수 변수를 전역 변수로 설정.
- 매개변수의 값이 입력받은 숫자보다 큰 경우 함수 종료.
- 매개변수의 값이 입력받은 숫자와 같은 경우 개수 1 증가.
- 1부터 3까지 반복.
-- 매개변수 + i 를 전달하여 함수 실행(재귀).
def func(num):
global count
if num > n:
return
if num == n:
count += 1
return
for i in range(1, 4):
func(num + i)
전체 코드.
import sys
def func(num):
global count
if num > n:
return
if num == n:
count += 1
return
for i in range(1, 4):
func(num + i)
input = sys.stdin.readline
t = int(input())
for _ in range(t):
n = int(input())
count = 0
func(0)
print(count)
728x90
반응형
'코딩 > 공부' 카테고리의 다른 글
[Python] 백준 2775번 - 부녀회장이 될테야 (1) | 2024.03.22 |
---|---|
[Python] 백준 11726번 - 2xn 타일링 (0) | 2024.03.22 |
[Python] 백준 1463번 - 1로 만들기 (0) | 2024.03.21 |
[Python] 백준 20186번 - 수 고르기 (0) | 2024.03.16 |
[Python] 백준 19939번 - 박 터뜨리기 (1) | 2024.03.16 |