백준 2109 순회강연 파이썬
·
CodingTest
문제링크 : https://www.acmicpc.net/problem/2109 문제 작성자의 지능이슈(국어) 문제를 읽고, ‘날짜를 Key, 값을 Value로 구성하는 Key-Value를 구성해서 하나씩만 하면 되겠다' 라는 마음에 작성한 소스코드를 먼저 첨부한다 # kv_dict = {1: [20, 2], 3: [10], 2: [100, 8], 20: [5], 10: [50]} import sys input = sys.stdin.readline n = int(input().strip()) kv_dict = dict() for _ in range(n) : v, k = map(int, input().split()) if k in kv_dict.keys() : kv_dict[k].append(v) else ..
백준 13913 숨바꼭질4 파이썬
·
CodingTest
문제링크 https://www.acmicpc.net/problem/13913 그래프로 풀면 어떨까? 어떻게 해야하나 싶었는데 BFS, DFS로 접근하면 되지않을까? 에 대한 고민을 했고 다행히 완탐처럼 그래프 돌려서 풀었는데 성공했다 빠르게 연산된경우가, 늦게 연산된 경우보다 무조건 길이가 짧을까? 생각하는게 두가지가 있는데 단순 +1 -1만 사용해서 증감한 경우와 *2 +1 -1 모두를 사용해서 증감을 한경우 중에 특정한 숫자는 무조건적으로 연산횟수가 빠른게 먼저나올까? 에 대한 고민이었다 정답은 옳다. 나는 BFS로 풀었는데, 이때 특정값을 기준으로 +1 -1 *2 값에 접근하는거고 빨리 나온 숫자는 연산횟수가 짧아서, 길이가 짧다. 방문처리를 따로 확인하는 변수가 있어야한다. 경로를 저장해야한다 문..
[BOJ] 11403 경로 찾기
·
CodingTest
문제 : https://www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net 솔루션 : 단순 BFS진행 소스코드 : N = int(input()) #데이터 입력받기 temp =[] for i in range(N) : temp.append( list(map(int,input().split()) )) visited = [[ False for i in range(N)] for j in range(N) ] graph = [ [] for w in range(N)] #단방향 그래프 형태로 표현하기 for i in r..
[BOJ] 14502 연구소
·
CodingTest
문제 : https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 솔루션 : itertools.combinations을 사용해서 임의로 벽을 짓는 경우의 수를 구하고 BFS를 진행 original_maps = [] N, M = map(int,input().split()) for i in range(N) : original_maps.append( list( map(int,input().split()) ) ) #원래 맵을 넣고 딥카피 import copy maps = ..
[BOJ] 10026 적록색약
·
CodingTest
문제 : https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 솔루션 : 1. 배열을 각각 2개를 만든다(R-G-B배열, RG-B배열) 2. 모든 위치에 대해서 BFS를 진행 소스코드 : N = int(input()) # Red, Green, Blue normal_maps = [] normal_TF = [[False for _ in range(N)] for _ in range(N)] # Mixed, Blue redgreen_maps = [] ..
jjongguet
'백준' 태그의 글 목록 (2 Page)