Koala - 11기/기초 알고리즘 스터디

문제: 2839번: 설탕 배달 (acmicpc.net) 코드 코드 설명 먼저, n킬로그램의 설탕 무게를 입력 받는다. 최대한 많은 수의 5킬로그램의 봉지를 만들고 나머지를 3킬로그램의 봉지로 만드는 것이 최소 개수를 만드는 방법이므로, while문을 통해 n을 5로 나누어서 나머지가 0이면 봉지의 개수를 n/5 값을 현재 봉지의 개수에서 추가를 하고 그 즉시 while문을 탈출해서 봉지의 개수를 출력하게 만들거나, 나머지가 0이 아닌 경우는 지속적으로 n에서 3을 빼주는 것을 반복하면서 봉지의 개수를 1씩 추가하고 n이 3이상일 때만 반복하게 만들어주었다. while문을 탈출 후 n은 0, 1, 2의 수 중 하나를 가지게 되는데, n이 0이 아니면, 정확하게 봉지에 나누어서 담을 수 없으므로, -1을 출..
문제 https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net 문제 설명 장부에 K번만큼 숫자를 쓰거나 지우는데, 입력받는 숫자가 0이면 가장 최근 숫자를 지우고 0이 아니라면 해당 수를 쓴다. 최종적으로 0이 아닌 숫자들의 합을 구하면 된다. 코드 #include #include using namespace std; int main() { int K; cin >> K; int total = 0; stack accoun..
문제 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 알고리즘 분류 수학 다이나믹 프로그래밍 그리드 알고리즘 문제 설명 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로..
문제 코드 코드 설명 1. 두 수를 비교하는 문제이기 때문에 먼저 a, b의 입력을 받아야 한다. -> a, b = map(int, input().split()) 2. a가 b보다 클 경우에는 '>'를 출력하고, a가 b보다 작을 때는 '
https://www.acmicpc.net/problem/1551 1551번: 수열의 변화 첫째 줄에 수열의 크기 N과 K가 주어진다. N은 20보다 작거나 같은 자연수이고, K는 0보다 크거나 같고, N-1보다 작거나 같은 정수이다. 둘째 줄에는 수열이 ‘,’로 구분되어 주어진다. 수열을 이루 www.acmicpc.net 문제 분석 분류 수학, 구현, 문자열, 시뮬레이션, 파싱 문제 설명 크기가 N인 수열 A가 주어졌을 때, 세준이는 인접한 두 원소의 차이를 이용해서 크기가 N-1인 수열 B를 만들 수 있다. 예를 들어, A = {5, 6, 3, 9, -1} 이었을 때, B = {6-5, 3-6, 9-3, -1-9} = {1, -3, 6, -10}이 된다. 즉, B[i] = A[i+1]-A[i]가 된다..
문제 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 알고리즘 분류 수학 다이나믹 프로그래밍 그리디 알고리즘 문제 설명 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로..
문제 https://www.acmicpc.net/problem/1267 1267번: 핸드폰 요금 동호가 저번 달에 이용한 통화의 개수 N이 주어진다. N은 20보다 작거나 같은 자연수이다. 둘째 줄에 통화 시간 N개가 주어진다. 통화 시간은 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 설명 동호가 저번 달에 통화한 내용을 입력받고 통신사의 두 가지 요금제 중 더 적게 나오는 요금제를 계산하여 출력하는 문제이다. 코드 input = __import__('sys').stdin.readline def fee_30(num): return (num // 30 + 1) * 10 def fee_60(num): return (num // 60 + 1) * 15 def main(): N =..
https://www.acmicpc.net/problem/4458 4458번: 첫 글자를 대문자로 첫째 줄에 줄의 수 N이 주어진다. 다음 N개의 줄에는 문장이 주어진다. 각 문장에 들어있는 글자의 수는 30을 넘지 않는다. 모든 줄의 첫 번째 글자는 알파벳이다. www.acmicpc.net 문제 분석 분류 구현, 문자열 문제 설명 문장을 읽은 뒤, 줄의 첫 글자를 대문자로 바꾸는 프로그램을 작성하시오. 입력 첫째 줄에 줄의 수 N이 주어진다. 다음 N개의 줄에는 문장이 주어진다. 각 문장에 들어있는 글자의 수는 30을 넘지 않는다. 모든 줄의 첫 번째 글자는 알파벳이다. 출력 각 줄의 첫글자를 대문자로 바꾼뒤 출력한다. 입출력 예제) 소스코드 t=int(input()) for i in range(t):..
문제 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 문제 설명 T개의 테스트 데이터 괄호문자열을 받고 올바른 괄호 문자열(Valid PS, VPS)인지 판별하여 'NO' 또는 'YES'를 출력하는 문제이다. 코드 T = int(input()) for _ in range(T): arr = list(input().strip()) # 입력 문자열을 공백 및 개행 문자 제거 후 리스트로 변환 stack = [] # 스택..
문제 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 문제 설명 n 킬로그램의 설탕이 주어졌을 때 5kg과 3kg으로 나누어 정확히 0kg의 설탕으로 만들 수 있으면 각각의 설탕 봉지 개수를 만들 수 없다면 -1을 출력하면 된다. 코드 #include using namespace std; int main() { int n; cin >> n; int kg3 = 0, kg5 = 0; while (n > 1) { if ((n % 5) == 0) { n -= 5..
KauKoala
'Koala - 11기/기초 알고리즘 스터디' 카테고리의 글 목록 (4 Page)