백준

카테고리 없음

백준 11052번(Python) : 카드 구매하기

www.acmicpc.net/problem/11052 11052번: 카드 구매하기 첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000) www.acmicpc.net [풀이] n이 4가 주어지면 1개짜리와 3개짜리를, 2개짜리 2개를 사서 값을 비교해야한다. 만약 n이 5라면 (1,4),(2,3),(3,2),(4,1)를 확인해야한다. dp에는 (1,1,1,1,1) 같은 경우는 이미 계산이 된 것으로 생각하면 된다. [코드] import sys input = sys.stdin.readline n = int(input()) dp = [0 for i in range(n+1)] arr =..

Algorithm/백준

백준 4811번(Python): 알약

[풀이] 반 개 'H'인 경우는 그전에 한개를 쪼갠적이 있어야 한다. 이 말뜻을 다시 생각해보면 'H'의 개수가 'W'의 개수보다 많으면 안된다는 것이다. DP[i][j] : 알약 반개, 즉 'H'인 경우의 횟수 ,알약 한개 즉 'W'인 경우의 횟수이다. 여기서, 모두 반조각을 먹는 경우는 1가지 경우 뿐이므로 미리 1로 DP를 채워둔다. 이를 이용하면 아래와 같은 코드가 나온다. [코드] import sys input = sys.stdin.readline while True: n = int(input()) if n == 0: break dp = [[0 for j in range(n+1)] for i in range(n+1)] for i in range(n+1): dp[0][i] = 1 for i in ..

Algorithm/백준

백준 2960번(Python) : 에라토스테네스의 체

www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net [풀이] 숫자가 2부터 n까지 리스트에 들어가기 때문에 따로 리스트에 숫자를 넣지 않아도 됩니다. 대신 False로 리스트를 만들어 이 숫자를 제거 했는지 확인할 수 있게 만들었습니다. 이후 반복문으로 배수를 돌며 False 리스트를 True로 변경해주면 됩니다. 이때 만약 count 가 k가 된다면 답을 출력하면 됩니다. [코드] import sys input = sys.stdin.readline n,k = map(int,input().split()) arr = [False] * (n+1) cou..

Algorithm/백준

백준 18312번(Python): 시각

www.acmicpc.net/problem/18312 18312번: 시각 정수 N과 K가 입력되었을 때 00시 00분 00초부터 N시 59분 59초까지의 모든 시각 중에서 K가 하나라도 포함되는 모든 시각을 세는 프로그램을 작성하시오. 시각을 셀 때는 디지털 시계를 기준으로, www.acmicpc.net [풀이] 브루트 포스 문제 유형으로 for문을 3번 사용해서 수를 하나씩 확인해주면 됩니다. 근데 이 부분이 백준 질문섹션에도 있었는데 0을 신경 안쓰고 for문으로 수를 확인한다면 23시 5분 5초 일 경우 2355라고 나오기때문에 0의 수가 제대로 나오지 않습니다. 그래서 저는 10보다 작을 경우 0을 붙여주는 식으로 했는데.. 으음.. 코드가 깔끔하지 않은 것 같긴 합니다.. 그래서 다른 사람들 코..

Algorithm/백준

백준 19532번(Python) : 수학은 비대면강의입니다.

www.acmicpc.net/problem/19532 19532번: 수학은 비대면강의입니다 정수 $a$, $b$, $c$, $d$, $e$, $f$가 공백으로 구분되어 차례대로 주어진다. ($-999 \leq a,b,c,d,e,f \leq 999$) 문제에서 언급한 방정식을 만족하는 $\left(x,y\right)$가 유일하게 존재하고, 이 때 $x$와 $y$가 각각 $- www.acmicpc.net [풀이] 브루트포스 유형의 문제로서 a,b,c,d,e,f 값을 입력 받고 x와 y의 값의 범위가 주어지므로 for문 안에서 하나씩 확인을 하면 되는 문제입니다. [코드] import sys input = sys.stdin.readline a,b,c,d,e,f = map(int,input().split()) ..

Algorithm/백준

백준 13164번(Python) : 행복 유치원

www.acmicpc.net/problem/13164 13164번: 행복 유치원 입력의 첫 줄에는 유치원에 있는 원생의 수를 나타내는 자연수 N(1 ≤ N ≤ 300,000)과 나누려고 하는 조의 개수를 나타내는 자연수 K(1 ≤ K ≤ N)가 공백으로 구분되어 주어진다. 다음 줄에는 원생들 www.acmicpc.net [풀이] 리스트에 인접한 두 사람의 키의 차이를 리스트에 저장을 한 후, 정렬을 하였습니다. 이후, N명의 사람을 K조로 나누었으므로 (N-K)까지의 키 차이를 더하면 값을 얻을 수 있다. [코드] import sys input = sys.stdin.readline n,k = map(int,input().split()) arr = list(map(int,input().split())) r..

skyey94
'백준' 태그의 글 목록 (6 Page)