본문 바로가기

Algorithm475

[파이썬] 백준 2098 : 외판원 순회 (골드1) [파이썬] 백준 2098 : 외판원 순회 (골드1) 2098번: 외판원 순회 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 16) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net 문제 풀이 0. 방향성 생각 상태가 많이 존재 -> 비트마스킹 경로 탐색 -> BFS 1. 입력 import sys sys.setrecursionlimit(10**6) n = int(input()) w = {i:dict(zip(range(n),list(map(int,input().split())))) for i in range(n)} dp = [[-1]*(n) for _ i.. 2023. 8. 30.
[파이썬] 백준 1103 : 게임 (골드2) [파이썬] 백준 1103 : 게임 (골드2) 1103번: 게임 줄에 보드의 세로 크기 N과 가로 크기 M이 주어진다. 이 값은 모두 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 보드의 상태가 주어진다. 쓰여 있는 숫자는 1부터 9까지의 자연수 또는 www.acmicpc.net 문제 풀이 0. 방향성 생각 DFS + DP 사용 1. 입력 import sys sys.setrecursionlimit(10**6) input = lambda : sys.stdin.readline().rstrip() h,w = map(int,input().split()) arr = [list(input()) for _ in range(h)] dp = [[-1]*w for _ in range(h)] visit = [[0.. 2023. 8. 29.
[파이썬] 백준 1939 : 중량제한 (골드3) [파이썬] 백준 1939 : 중량제한 (골드3) 1939번: 중량제한첫째 줄에 N, M(1 ≤ M ≤ 100,000)이 주어진다. 다음 M개의 줄에는 다리에 대한 정보를 나타내는 세 정수 A, B(1 ≤ A, B ≤ N), C(1 ≤ C ≤ 1,000,000,000)가 주어진다. 이는 A번 섬과 B번 섬 사이에 중량제한이www.acmicpc.net문제풀이0. 방향성 생각최대힙 사용해서 목적지에 우선적을 도달하게 한다.1. 입력import heapq as hqn,m = map(int,input().split())graph = {i: {} for i in range(1,n+1)}for _ in range(m): a,b,limit = map(int,input().split()) if b in gra.. 2023. 8. 29.
[파이썬] 프로그래머스 : 추석 트래픽 (Lv.3) [파이썬] 프로그래머스 : 추석 트래픽 (Lv.3) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 0.방향성 생각 정렬 (근데 이미 정렬돼있음) 이전에 풀었던 요격하기. 단속카메라 문제랑은 다르게 특정 시점이 아니라 구간 최대값이다. 1. 문자열 파싱 def solution(lines): info = [] for line in lines: _,now,spend = line.split() h,m,s = map(float,now.split(':')) end = int((h*3600+m*60+s)*1000) start = int(end-float(spen.. 2023. 8. 28.