본문 바로가기
728x90

Python164

[백준] 11047. 동전 0 - Python https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 생각1 - 이진 탐색 뺄 수 있는 값 중 가장 큰 값을 이진 탐색을 통해 찾기 그 값을 K에서 빼줄 수 있는 만큼 빼기 K가 0이 될 때까지 반복 코드1 from sys import stdin input = stdin.readline # 동전의 종류, 동전 가치의 합 N,K = map(int,input().split()) value .. 2022. 6. 22.
[백준] 11399. ATM - Python https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 생각 i번 사람은 1~(i-1)번 사람의 돈 인출 시간만큼 대기해야함 앞 사람의 인출 시간이 적을수록 전체 인출 시간이 줄어듬 1번사람의 인출을 (N-1)명이 기다림 i번 사람의 인출을 (N-i)명이 기다림 코드 from sys import stdin input = stdin.readline # 사람의 수 N = int(input()) # 각 사람이 돈을 인출하는데 걸리는 시간 P = list(map(int,input().sp.. 2022. 6. 22.
[백준] 15654. N과 M (5) ~ (8) - Python https://www.acmicpc.net/problem/15654 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 코드 from sys import stdin # N개의 자연수 중 M개 고르기 N,M = map(int,stdin.readline().split()) num = list(map(int,stdin.readline().split())) # 사전 순 출력을 위해 num.sort() # 수열, 수열에 들어간 요소 표시 def check(arr,visited): # 수열의 길이가 M인가? if l.. 2022. 6. 21.
[백준] 1916. 최소비용 구하기 - Python https://www.acmicpc.net/problem/1916 1916번: 최소비용 구하기 첫째 줄에 도시의 개수 N(1 ≤ N ≤ 1,000)이 주어지고 둘째 줄에는 버스의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 M+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 www.acmicpc.net 생각 한 점에서 다른 점으로 가는 최소 비용 : 다익스트라 코드 from sys import stdin, maxsize import heapq input = stdin.readline # 도시의 개수 N = int(input()) # 버스의 개수 M = int(input()) money = [[] for _ in range(N+1)] for _ in range(M.. 2022. 6. 21.
[백준] 17144. 미세먼지 안녕! - Python https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 생각 공기청정기 위치 확인 미세먼지 확산 : 동시에!! 공기청정기 돌리기 : 위쪽, 아래쪽 따로 1~2를 T번 반복 미세먼지 양 출력 코드 from sys import stdin # RxC 격자판, T초 후 결과 구하기 R,C,T = map(int,stdin.readline().split()) dust = [list(map(int,stdin.readline().split())) for _ in .. 2022. 6. 21.
[백준] 1504. 특정한 최단 경로 - Python https://www.acmicpc.net/problem/1504 1504번: 특정한 최단 경로 첫째 줄에 정점의 개수 N과 간선의 개수 E가 주어진다. (2 ≤ N ≤ 800, 0 ≤ E ≤ 200,000) 둘째 줄부터 E개의 줄에 걸쳐서 세 개의 정수 a, b, c가 주어지는데, a번 정점에서 b번 정점까지 양방향 길이 존 www.acmicpc.net 생각 1번에서 N번으로 가는 최단 거리 : 다익스트라 이동 중 주어진 두 정점(v1, v2)을 반드시 통과 1 -> v1 -> v2 -> N 1 -> v2 -> v1 -> N '세준이는 한번 이동했던 정점은 물론, 한번 이동했던 간선도 다시 이동할 수 있다.' 코드 from sys import stdin,maxsize import heapq input .. 2022. 6. 21.
반응형