목록문제/백준_파이썬 (155)
sm 기술 블로그
N = int(input()) def chatBot(i, N): print("____"*i+"\"재귀함수가 뭔가요?\"") if i == N: # i와 N이 같으면 함수 호출을 그만함 print("____"*i+"\"재귀함수는 자기 자신을 호출하는 함수라네\"") else: print("____"*i+"\"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.") print("____"*i+"마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.") print("____"*i+"그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어.\"") chatBot(i+1, N) # i와 N이 같지 않으면 함수 호출을 계속 ..
n = int(input()) def fibonacci(N): if(N == 0): return 0 if(N == 1): return 1 return (fibonacci(N-2) + fibonacci(N-1)) print(fibonacci(n)) >> 피보나치 수열 : n번째는 n-2번째와 n-1번째의 합과 같다 위 로직의 피보나치 수열의 원리를 그림으로 그리면 다음과 같다.
N = int(input()) def factorial(N): if(N == 1 or N == 0): return 1 else: return N*factorial(N-1) print(factorial(N)) 재귀 함수 이용 https://smhope.tistory.com/183 재귀함수 정의 하나의 함수에서 자기 자신을 다시 호출해 작업을 수행하는 방식으로 주어진 문제를 푸는 방법 화면 안에 화면이 있고 그 화면 안에 화면이 있으며 그 안에 ..... => 함수를 호출하고 다시 자 smhope.tistory.com
import math T = int(input()) result = '' # 1 소수값 저장 arr_prime = [] for i in range(0, 10000): # 배열은 0부터 시작된다. # 인덱스를 값으로 따질거여서 0부터 소수 판별. is_prime = True for j in range(2, int(math.sqrt(i))+1): if(i % j) == 0: is_prime = False break if((not is_prime) or i == 0 or i == 1): arr_prime.append(0) elif(is_prime): # 조건 없이 else로 해도 되지만 확실히 하기위해서 작성 arr_prime.append(1) # 2 답 구하기 for _ in range(T): n = int..