내용으로 건너뛰기
테페리넷
사용자 도구
등록
로그인
사이트 도구
검색
도구
문서 보기
Fold/unfold all
역링크
미디어 관리자
사이트맵
등록
로그인
>
미디어 관리자
사이트맵
현재 위치:
테페리넷
»
Problem Solving
»
문제
»
백준 온라인 저지 (BOJ)
»
떡파이어
ps:problems:boj:15717
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== 떡파이어 ====== ===== 풀이 ===== * 식만 잘 정리하면 된다. * 간단하게 재귀형태로 정리하면, 떡 n개를 며칠동안 나눠먹는 방법 f(n)은 {첫째날에 1개를 먹는 경우} + {첫째날에 2개를 먹는 경우} + ... + {첫째날에 n개를 먹는 경우} 로 나눌수 있다. 첫째날에 k개를 먹는 경우는 나머지 날 동안 n-k를 나눠먹는 방법 f(n-k)이므로. f(n) = f(n-1) + f(n-2) +... + f(1) = f(n-1) + f(n-1) = 2*f(n-1). 단순한 등비수열이고, f(1)=1 이므로 f(n)=2^n. 이제 코딩은 1줄에도 끝낼수 있다.. * n=0 일때 0을 출력하는 것에만 주의. ===== 코드 ===== <dkpr py> """Solution code for "BOJ 15717. 떡파이어". - Problem link: https://www.acmicpc.net/problem/15717 - Solution link: http://www.teferi.net/ps/problems/boj/15717 """ MOD = 10**9 + 7 def main(): N = int(input()) print(pow(2, N - 1, MOD) if N > 0 else 1) if __name__ == '__main__': main() </dkpr> {{tag>BOJ ps:problems:boj:골드_5}}
ps/problems/boj/15717.txt
· 마지막으로 수정됨: 2021/07/31 15:50 저자
teferi
문서 도구
문서 보기
역링크
Fold/unfold all
맨 위로