[백준] 재귀함수가 뭔가요?
문제
c = int(input())
def answer_txt(cnt):
if cnt == -1:
return
print('____'*cnt + '라고 답변하였지.')
answer_txt(cnt - 1)
def question_txt(cnt, c):
if cnt == c:
print('____'*cnt + '"재귀함수가 뭔가요?"')
print('____'*cnt + '"재귀함수는 자기 자신을 호출하는 함수라네"')
answer_txt(cnt)
return
print('____'*cnt + '"재...
[백준] 재귀의 귀재
문제
def recursion(s, l, r, c):
c += 1
if l >= r: return 1, c
elif s[l] != s[r]: return 0, c
else: return recursion(s, l+1, r-1, c)
def isPalindrome(s):
return recursion(s, 0, len(s)-1, 0)
cnt = int(input())
for i in range(cnt):
txt = input()
print(isPalindrome(txt)[0], isPalindrome(txt)[1])
[NLP] Exploding and Vanishing Gradient of RNN
Exploding and Vanishing Gradient of RNN
RNN은 hidden-state($h_t$)에 이전 time step에 대한 정보를 가지고 있다. 하지만 이 $h_t$는 고정된 크기의 벡터이기에 긴 time step에 대한 정보를 모두 저장하기에는 한계가 있다.
이 부분을 좀 더 자세히 보기 위해 RNN의 학습 방법을 다시 보게 되면 아래의 그림과 같이 각 time step을 Forward 과정을 진행한다.
여기서 $\frac{dy_3}{dh_1}$을 구한다고 해보자. 그럼 $\frac{dy_3}{dh_3} \times \frac{dh_3}{dh_2} ...
[NLP] RNN과 Launguage Model
RNN(Recurrent Neural Network)
RNN은 자연어 처리 및 시계열 데이터 등의 가변적인 길이의 sequence 데이터를 입력으로 받아 매 time step마다 output을 내는 모델이다.
위의 식과 같이 RNN은 이전 time step의 output인 $h_{t-1}$과 현재 input $x_t$를 input으로 받아 현재의 hidden state $h_t$를 출력한다.
이 때, 모든 time step에서는 동일한 Parameter $\theta$를 사용한다.
RNN에서 Activation 함수로 주로 Tanh를 사용한다. Tanh는 zero-cent...
[백준] 큰 수 구성하기
문제
from itertools import product
n, k = map(int, input().split())
num_list = sorted(map(str, input().split()), reverse=True)
max_length = len(str(n))
def find_largest_combination():
for length in range(max_length, 0, -1):
for c in product(num_list, repeat=length):
answer = int("".join(c))
if answer <= ...
99 post articles, 20 pages.