본문 바로가기

전체 글293

백준 1003번. 피보나치 함수 (Python / 파이썬) 문제 다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다. fibonacci(3) 을 호출하면 다음과 같은 일이 일어난다. - fibonacci(3)은 fibonacci(2)와 fibonacci(1) (첫 번째 호출)을 호출한다. - fibonacci(2)는 fibonacci(1) (두 번째 호출)과 fibonacci(0)을 호출한다. - 두 번째 호출한 fibonacci(1)은 1을 출력하고 1을 리턴한다. - fibonacci(0)은 0을 출력하고, 0을 리턴한다. - fibonacci(2)는 fibonacci(1)과 fibonacci(0)의 결과를 얻고, 1을 리턴한다. - 첫 번째 호출한 fibonacci(1)은 1을 출력하고, 1을 리턴한다. - fibonacci(3)은 fibonacci(.. 2022. 4. 20.
백준 1932번. 정수 삼각형 (Python / 파이썬) 문제 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. 삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는 모두 정수이며, 범위는 0 이상 9999 이하이다. 입력 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. 출력 첫째 줄에 합이 최대가 되는 경로에 있는 수의 합을 출력한다. 문제 풀이 정수 삼각형이 주어졌을 때, 맨 위층부터 시작해서 대.. 2022. 4. 20.
백준 2108번. 통계학 (Python / 파이썬) 문제 수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자. 1. 산술평균 : N개의 수들의 합을 N으로 나눈 값 2. 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 3. 최빈값 : N개의 수들 중 가장 많이 나타나는 값 4. 범위 : N개의 수들 중 최댓값과 최솟값의 차이 N개의 수가 주어졌을 때, 네 가지 기본 통계값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. 출력 첫째 줄에는 산술평균을 출.. 2022. 4. 19.
백준 1475번. 방 번호 (Python / 파이썬) 문제 다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다. 다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.) 입력 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 필요한 세트의 개수를 출력한다. 문제 풀이 방 번호 문제의 핵심은 같은 번호의 최대 개수만큼 세트가 필요하다는 것입니다. 같은 번호는 한 세트 안에 하나만 존재하므로 같은 번호의 최대 개수만큼 세트가 필요합니다. 그.. 2022. 4. 19.