코딩테스트
정렬_심화25) 실패율 _ python
문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42889 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(N, stages): stages.sort() result = {} for i in range(N): result[i+1] = 0 for i in stages: try: result[i] += 1 except: break downNum = len(stages) print(result) for i in range(N): nextNum = result[i+1] i..
정렬_심화24) 안테나 _ python
문제링크 https://www.acmicpc.net/problem/18310 18310번: 안테나 첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다. www.acmicpc.net 코드 # 안테나 n = int(input()) homeList = list(map(int, input().split())) homeList.sort() idx = (homeList[(n-1)//2]) print(idx)
BFS&DFS_심화21) 인구이동 _ python
문제링크 https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 코드 # 인구이동 - bfs from collections import deque n, l , r = map(int, input().split()) graph = [] for _ in range(n): graph.append(list(map(int, input().split()))) dx = [0, 0, 1, -1] dy = [1, -1, 0, 0] def bfs(x, y)..
BFS&DFS_심화19) 연산자 끼워 넣기 _ python
문제링크 https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 곱 www.acmicpc.net 코드 import sys input = sys.stdin.readline n = int(input()) num = list(map(int, input().split())) op = list(map(int, input().split())) maximum = -1e9 minimum = 1e9 def dfs(depth, total, p..
BFS&DFS_심화18) 괄호변환 _ python
문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/60058 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def divide(p): openP = 0 closeP = 0 for i in range(len(p)): if p[i] == '(': openP += 1 elif p[i] == ')': closeP += 1 if openP == closeP: return p[:i+1],p[i+1:] def check(u): stack = [] for i in u: if i == '(': stack..
BFS&DFS_심화17) 경쟁적 전염 _ python
문제링크 https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net 코드 # 경쟁적 전염 - bfs from collections import deque N, K = map(int, input().split()) graph = [] virus = [] for i in range(N): graph.append(list(map(int, input().split()))) for j in range(N): if graph[i][j]..