https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 분류 : 수학, 구현, 조합론 이항 계수 : n개의 서로다른 것들 중에서 k개를 선택하는 조합의 경우의 수 n = 5, k = 2일때를 예로들면 [1, 2, 3, 4, 5] 에서 2개를 뽑는 조합의 수가 몇개인지를 구하는 것이다. (조합 : 순서를 생각하지 않고 뽑는 경우의 수) 여기서는 (1, 2), (1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5) => 총 10개가 되겠다. 1 : combin..
https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 알고리즘 분류 : 수학 코드 import math A, B, V = map(int, (input().split())) print(math.ceil((V-A)/(A-B))+1) 코드 풀이 반복문으로 문제를 접근하면 원하는 값은 출력될 것이나 시간 초과로 오답처리가 된다. 따라서 그냥 공식을 하나 만들어서 바로 출력하는 방법으로 해결해야 했다. 이동한 시간(일 수) = 도달해야 할 거리 / 하루 동안 이동한 거리이다. 낮에 A만큼 올라갔다가 밤에 B만큼 다시..
https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 난이도 브론즈1 알고리즘 분류 : 수학, 다이나믹 프로그래밍, 그리디 알고리즘 그리디 알고리즘은 가장 큰 단위부터 거슬러주는 방법이다. 5kg 봉투를 몇개를 써야할지에 대해 초점을 두고 문제를 풀었다. N에 설탕의 무게를 입력받는다. N을 3kg, 5kg 봉투를 이용해 나눌때 봉지수를 최소화 한다면 몇개가 되는지를 출력한다. 1 : 먼저 3kg씩 덜면서 봉투에 담는 방법 N = int(input()) kg_..
https://www.acmicpc.net/problem/1259 1259번: 팰린드롬수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다. www.acmicpc.net 알고리즘 분류 : 구현, 문자열 1 : reversed()와 join함수를 이용한 풀이 while True: N = input() if N == '0': break if N == ''.join(reversed(N)): print('yes') else: print('no') reversed()함수 문자열을 반대로 돌린값을 반환한다. join함수 '구분자'.join(리스트) 인자로 넘겨주는 리스트의 요소들을 구분자로..
https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 알고리즘 분류 : 브루트 포스 1 : for문 중첩을 이용한 풀이(124ms) N, M = map(int, input().split()) lst = list(map(int, input().split())) nlst = [] for i in range(N): for j in range(i+1, N): for k in range(j+1, N): three = lst[i..
https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 알고리즘 분류 : 수학, 구현 문제의 설명을 그림으로 나타내면 다음과 같다. 1층의 2호실에 있는 사람의 수는 0층의 1, 2호실 사람들의 수와 같다. 2층 3호실에 있는 사람의 수는 1층의 1, 2, 3호실 사람들의 수와 같다. 0층의 인원들을 리스트로 나타내면 다음과 같을 것이다. lst = [1, 2, 3, 4] 몇층이 되던간에 lst[0] = 1로 동일한 반면, 다음 층의 lst[1]은 이전층의 lst[1] + lst[0]의 값과..