백준 / 11047번 / 동전 0 / Greedy Algorithm / python 파이썬
·
코딩테스트/백준 (python)
문제 : https://www.acmicpc.net/problem/11047  코드 import sysinput = sys.stdin.readlinen, k = map(int, input().split())coin = []for i in range(n): coin.append(int(input()))count = 0for i in reversed(range(n)): count += k // coin[i] k %= coin[i]print(count) 큰 동전이 작은 동전의 배수가 된다는 조건이 있으므로, 그리디 알고리즘을 사용하여 풀 수 있다.count에 가장 큰 동전으로 나눈 몫을 더해주고, 그 나머지를 k로 두며 반복하면 동전 수의 최솟값을 구할 수 있다.
백준 / 7785번 / 회사에 있는 사람 / python 파이썬
·
코딩테스트/백준 (python)
문제 : https://www.acmicpc.net/problem/7785  코드 import sysinput = sys.stdin.readlinenum = int(input())name_list = {}for i in range(num): name, status = map(str, input().split()) if status == "enter": name_list[name] = status else: del name_list[name]rem = sorted(name_list, reverse = True)for n in rem: print(n)
Programmers / 2단계 / 행렬 테두리 회전하기 / python
·
코딩테스트/programmers (python)
출처: https://school.programmers.co.kr/learn/courses/30/lessons/77485 코드def solution(rows, columns, queries): matrix = [] tmp = [] for i in range(1, (rows * columns + 1)): tmp.append(i) if (len(tmp) == columns): matrix.append(tmp) tmp = [] rotation(matrix, queries) return answer answer = []def rotation(matrix, queries): global answer ..
Programmers / SQL / 강원도에 위치한 생산공장 목록 출력하기
·
코딩테스트
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/131536 코드SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_IDHAVING COUNT(PRODUCT_ID) > 1ORDER BY USER_ID ASC, PRODUCT_ID DESC;  SELECT ~ FROM 절ONLINE_SALE 테이블의 USER_ID와 PRODUCT_ID 컬럼을 조회한다. GROUP BY 절동일한 회원이 동일한 상품을 재구매한 데이터를 조회해야 하므로 USER_ID와 PRODUCT_ID 컬럼을 그룹화한다.예시 테이블의 USER_ID가 1인 경우를 살펴보면, PRODUCT_ID가 3인 상품과 ..
Programmers / SQL / 아픈 동물 찾기
·
코딩테스트
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/59036 코드SELECT ANIMAL_ID, NAMEFROM ANIMAL_INSWHERE INTAKE_CONDITION = 'Sick'ORDER BY ANIMAL_ID; 주어진 조건대로 작성하면 되는 간단한 문제이다.아픈 동물의 이름과 아이디를 조회하기 위해 INTAKE_CONDITION이 'Sick'인 조건을 조회하고, ANIMAL_ID순으로 정렬하여 답을 구할 수 있다.
Programmers / 2단계 / 수식 최대 / python / 2020 카카오 인턴십
·
코딩테스트/programmers (python)
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/67257  코드 from itertools import permutationsdef operation(num1, num2, op): if op == '+': return str(int(num1) + int(num2)) if op == '-': return str(int(num1) - int(num2)) if op == '*': return str(int(num1) * int(num2)) def calculate(expression, op): array = [] tmp = "" for i in expression: ..
백준 / 9012번 / 괄호 / python 파이썬
·
코딩테스트/백준 (python)
문제 : https://www.acmicpc.net/problem/9012  코드n = int(input())for i in range(n): stack = [] s = input() for j in s: if j == '(': stack.append(j) elif j == ')': if stack: stack.pop() else: print("NO") break else: if stack: print("NO") else: print("YES")
Programmers / 3단계 / 가장 먼 노드 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/49189# 코드from collections import dequedef solution(n, edge): graph = [[] for _ in range(n+1)] visited = [0] * (n+1) for e in edge: x, y = e[0], e[1] graph[x].append(y) graph[y].append(x) q = deque() q.append(1) visited[1] = 1 while q: p = q.popleft() for i in graph[p]: ..