목록수학 (75)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bEMXyu/btrI6rfQ6z2/rSf3qHsdKKmEgb3xDKABx1/img.png)
👉 문제링크 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 🔸 문제 분석 🔸 V미터 나무를 낮에 A미터 오르고, 밤에 B미터 미끌어떨어진다. 몇 일만에 나무를 다 오르는지 구한다. A, B, V 의 범위가 10억까지 가므로 단순 반복을 하면 시간초과가 난다. 🔸 코드 🔸 import math A, B, V = map(int, input().split()) print(math.ceil((V-A)/(A-B)) + 1) 🔸 코드 해석 🔸 하루하루 계산을 새는게 아니라 값의 차이를 나누고 반올림해서 일수를 구했다. math 모듈의 ceil함수는 올림 함수이다. V-A : ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bYMIWh/btrI9mryBNV/t9rl64kVWnbYrPTYlP4dQK/img.png)
👉 문제링크 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 🔸 문제 분석 🔸 입력된 k층의 n호에 몇 명이 사는지 출력하는 문제이다. 0층 1호에서 n호는 1명에서 n명이 산다. 1층부터는 'k-1층의 1호~n호' 에 사는 사람들 수의 합만큼 살고있다. 🔸 코드 🔸 T = int(input()) apt = [list(range(1,15))] for i in range(1,15): apt.append([1]) for j in range(1,14): apt[i].append(apt[i][j-1] + apt[i-1][j]) for i in range(T..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/4pb5Y/btrIy9M3Sqm/NuORvKnIkbQMTvXhv6jsh1/img.png)
👉 문제링크 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 🔸 문제 분석 🔸 이항 계수를 계산하는 문제이다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static void main(String[] args) { int answer = 0; Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int K = sc.nextInt(); int sum = 1; for(int i = 1; i
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/mMiaW/btrDEpCdIXb/5QDNQ7j0wbq60qYghHemZ0/img.png)
👉 문제링크 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 🔸 문제 분석 🔸 N번째 방 까지의 지나는 방의 수는 몇 번째 껍질(?)인지 세면 된다. 벌집은 한겹한겹 늘어날때마다 6배수만큼 늘어난다. 중앙 '1'에서 오른쪽 아래로 내려가면 '7', '19', '37', '61' 인데 증가폭을 보면 6, 12, 18, 24이다. 따라서 최대값을 6의 배수만큼 늘려가며 N이 포함되는지 확인하면 된다. 🔸 코드 🔸 #include using namespace std; int main(void) { int N, count =..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bzdulZ/btrDEQ0qF8z/JUJib3fXrkAGmfKDb3IDH0/img.png)
👉 문제링크 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 🔸 문제 분석 🔸 방을 채워가는 방법은 왼쪽아래부터 위로 한줄 한줄 채워가는 것이다. N > T; for (int i = 0; i > H >> W >> N; if (N%H == 0) printf("%d%02d\n", H, N / H); else printf("%d%02d\n", N % H, N / H + 1); } return 0; } 🔸 코드 해석 🔸 층을 N%H, 호실을 N / H + 1로 나타냈는데, 가장..