본문 바로가기

전체 글

(104)
2023.01.19 비밀번호 찾기 백준[파이썬] https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net import sys input = sys.stdin.readline n,m = map(int,input().split()) dicts = {} for _ in range(n): name,password = input().split() dicts[name] = password for _ in range(m): calls = input().strip() print(dic..
2023.01.19 ATM 백준[파이썬] https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net import sys input = sys.stdin.readline n = int(input().strip()) m = list(map(int,input().split())) m = sorted(m) sums = 0 for i in m: sums += i * n n -= 1 print(sums) 문제를 보고 정렬을 해서 가장 작은 수부터 n, n-1,..1 번씩 들어간다는 것을 알아서 sorted로 정렬하고 곱해서 풀었다. 보..
2023.01.19 적록색약 백준[파이썬] https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net import sys from copy import deepcopy input = sys.stdin.readline def find_area(graph,check): counter = 0 graphs = deepcopy(graph) for i in range(n): for j in range(n): if graphs[i][j] == 0 : continue discorverd = [[i,j]]..
2023.01.18 최소힙 백준[파이썬] https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net import sys from heapq import heappop, heappush input = sys.stdin.readline heap = [] n = int(input().strip()) for i in range(n): a = int(input().strip()) if a == 0: if heap: print(heappop(heap)) else: print(0) els..
2023.01.18 토마토 백준[파이썬] https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net import sys from collections import deque input = sys.stdin.readline def main(): def bfs(discovered): nonlocal graph max_time = 0 while discovered: # 가야하는 곳이 없으면 종료 #print(discovered) pos = discovered.popleft() # bf..
2023.01.18 좌표압축 백전 [파이썬] https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net import sys input = sys.stdin.readline n = int(input().strip()) lists = list(map(int,input().split())) sort_list = sorted(list(set(lists))) # 중복된걸 제외하고 정렬한다. dicts = {} for i ,val in enumerate(sor..
2023.01.18 동전 0 [파이썬] 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 import sys input = sys.stdin.readline n , goal = map(int, input().split()) count = 0 money_list = [int(input().strip()) for _ in range(n)] money_list.sort(reverse=True) for i in money_lis..
2023.01.18 나는야 포켓몬 마스터 이다솜[파이썬] https://www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net import sys from collections import defaultdict input = sys.stdin.readline n,m = map(int,input().split()) ency = defaultdict(str) for i in range(1,n+1): names = input().strip() ency[names] = str(i) ency[str(i..