목록ALGORITHM (82)
정구리의 우주정복
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 분류 : 그리디 풀이에 핵심이 되는 점은 소요 시간이 적은 순서대로 ATM 을 이용할때 최소 시간이 걸린다는 것이다. 풀이 #ATM people = int(input()) time = list(map(int,input().split())) time.sort() result = 0 for i in range(people): count = 0 for j in range(0,i+1): count += time[j] result +=..
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 *파이썬으로 품 **나보다 좋은 정답이 있을 수 있음 분류는 그리디 동전 값을 입력 받은 후에 sort(reverse=True) 로 내림차순 정렬을 해주는게 포인트 n,k = map(int,input().split()) coins = [] for _ in range(n): coins.append(int(input())) coins.s..
문제에서 상하 좌우로 이동을 시킨뒤에 최종적인 좌표를 구하세요 ! 라고 하는 문제가 자주 나온다 N*N 크기의 정사각형 공간에서 L : 왼쪽으로 한칸 이동 R : 오른쪽으로 한칸 이동 U : 위로 한칸 이동 D : 아래로 한칸 이동 이라고 했을때 L (0,-1) R (0, 1) U (-1, 0) D (1, 0) 으로 이동하게 된다 정사각형의 공간을 벗어나는 움직임은 무시된다고 생각 했을때 #상하좌우 n = int(input()) move = list(map(str,input().split())) x,y = 1,1 move_x = [0,0,-1,1] move_y = [-1,1,0,0] move_type =['L','R','U','D'] for i in move: for j in range(len(move_..
그리디 알고리즘은 "현재 상황에서 지금 당장 좋은걸 고르는 방법" 을 이용한 알고리즘이다 대표적인 문제로 거스름돈 문제가 있다 동전의 갯수를 최소화하여 돈을 거슬러 주는 문제이다 거스름 돈을 줄때에 제일 큰 금액부터 거슬러 주면 성립이 된다 #greedy 의 대표 문제 거스름돈 money = int(input()) count = 0 coins = [500,100,50,10] for i in coins: count += money // i money %= i print(count)
1101 : Hello, World! print("Hello, World!") 1102 : Hello, World! (줄 바꿈 버전) print("Hello,\nWorld!") 1103 : 폴더명 출력 print('"c:\\test"') 1106 : int의 범위 a = -2147483648 b = 2147483647 print(a,b) 1107 : 반복 출력하기 1 a = "" for _ in range(50): a = a+'print' print(a) 1108 : 반복 출력하기 2 a = "" for _ in range(20): a = a+'hello' a = a+' ' for _ in range(30): a = a+'world' print(a) 1109 : 보안카드 접수증 name = str(inp..
deque 에 관한 설명은 : https://j-ungry.tistory.com/189 파이썬 collections deque 함수 (덱,데크) 사용법 https://docs.python.org/3/library/collections.html#collections.deque collections — Container datatypes — Python 3.8.5 documentation collections — Container datatypes Source code: Lib/collections/.. j-ungry.tistory.com 처음에 생각한 코드 (동작은 되지만 시간초과가 남) def push(queue,value): queue.append(value) def pop(queue): value =..
https://www.acmicpc.net/problem/18258 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 시간 제한이 있어서 아마 많은 분들이 시간초과로 인해서 못 풀었을 수 있을것 같다 나도 처음에 시간초과 걸리고 아주 놀랐다구 ! 힌트 (해설을 보기 전 먼저 풀어보셔요) - pop 부분에서 굳이 list 의 것을 제거하려 하지말고 맨 가리키고 있는 부분을 +1씩 해줘보기 ex) queue = [1,2,3,4,5] 처음엔 [0] 을 가르키고 pop 을 하면 [1] 을 가르키..