python 14

[BOJ] 1238. 파티

www.acmicpc.net/problem/1238 1238번: 파티 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두 번째 줄부터 M+1번째 줄까지 i번째 도로의 시작점, 끝점, 그리고 이 도로를 지나는데 필요한 소요시간 Ti가 들어 www.acmicpc.net 문제: 파티에 다녀오는 최단 거리(왕복)를 구하라. 문제 이해하기!! 다익스트라 문제였습니다. 하지만 다익스트라를 한 번만에 푸는 것이 아닌 단 방향 길을 양 방향으로 생각해야 되는 문제에요. 시작하는 지점이 여러 개라고 모두 생각하다가는 시간초과가 날 수 있습니다. 제가 푼 방식을 설명하자면, 1. 먼저 도착지점에서 각 마을 파티사람들의 오는 최소거리를 다익스트라로 찾습니다. 2..

Study/BOJ 2021.06.07

[BOJ] 14503. 로봇 청소기

www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 문제: 로봇 청소기가 청소하는 칸의 개수를 출력하라. 문제 이해하기!! 전형적인 구현 문제입니다. 문제에 주어진대로 따라하면 코드를 작성하면 풀 수 있는데, 다만 얼마나 효율적으로 짜냐, 어떤 방식으로 짜냐가 중요하죠!! 저는 밑의 방식으로 풀게 되었습니다. 그 방식을 설명하자면!! 1. 각 방향으로 한 칸 전진하는 것을 함수로 만들어 줍니다. 2. 주어진 행동을 계속 반복하기 위해 while True로 반복..

Study/BOJ 2021.05.26

[BOJ] 20040. 사이클 게임

www.acmicpc.net/problem/20040 20040번: 사이클 게임 사이클 게임은 두 명의 플레이어가 차례대로 돌아가며 진행하는 게임으로, 선 플레이어가 홀수 번째 차례를, 후 플레이어가 짝수 번째 차례를 진행한다. 게임 시작 시 0 부터 n − 1 까지 고유한 www.acmicpc.net 문제: 사이클이 생긴다면 그 즉시, 해당 번호를 출력하라. 문제 이해하기!! 처음에는 이게 무슨 문젠가 싶었어요. 일단 그래프 문젠데... 연결해서 사이클이면 어떻게 해야하지 라고 생각했었는데 아니;; 그래프 문젠줄알고 들어가서 풀었는데 분리집합이더라구요. 들어오는 것들 union으로 싹 다 넣어서 부분 집합을 통일시키면 되는데, 들어오기 전에 둘의 부모가 같아서 이미 해당 부분집합에 들어가 있는 두 숫자..

Study/BOJ 2021.04.18

[BOJ] 1113. 수영장 만들기

백준 문제 주소: www.acmicpc.net/problem/1113 1113번: 수영장 만들기 지민이는 수영장을 만들려고 한다. 수영장을 만들 곳의 크기는 N*M이고, 각 칸은 직육면체이다. 따라서, 각 칸의 직육면체의 높이가 쓰여 있는 다음과 같은 땅을 생각할 수 있다. 16661 61116 16661 이 www.acmicpc.net 문제 : 주어진 수영장들의 영역(부피)를 구하라. 풀이 : 1. DFS / BFS 둘 다 가능한데, BFS가 좀 더 편하게 풀리는 것 같습니다. 2. 수영장 땅의 최대 높이는 9이니까 1~8까지 높이대로 영역(부피)를 구하여 결과값에 각각 저장해줍니다. 3. 수영장 한 곳을 찝어서 BFS/DFS를 돌릴 때, 수영장 밖으로 나가면 거기는 수영장이 아니고, 그 안에서만 돌면..

Study/BOJ 2020.10.19
반응형