BFS

알고리즘/BOJ

[백준/파이썬] 11725번 트리의 부모 찾기

배solved.ac Class 4레벨에 속한 문제이다. 문제 주소: https://www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 해석 루트가 1인 트리의 연결 상태가 주어진다. 루트를 제외한 이 트리의 각 노드의 부모를 구하는 문제이다. 문제 풀이 root인 1을 시작으로 bfs 탐색을 통해 부모 노드를 구해주었다. 문제 코드 import sys from collections import deque input = sys.stdin.readline def solve(n, adj): # bfs를 통해 root부터 탐색..

알고리즘/BOJ

[백준/파이썬] 1107번 리모컨

solved.ac Class 3레벨에 속한 문제이다. 문제 주소: https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼 www.acmicpc.net 문제 해석 고장난 리모컨 버튼이 주어진다. 누를 수 있는 버튼은 +, - 버튼과 고장나지 않은 숫자 버튼이다. 해당 리모컨을 주어진 채널에 최소로 도달하는 횟수를 구하는 문제이다. 문제 풀이 이동할 수 있는 채널은 500,000 이지만 숫자를 누르고, (+, -) 버튼을 통해 이동하는 경우의 채널은 1,000,000..

알고리즘/프로그래머스

[프로그래머스 / 파이썬] 숫자 변환하기

프로그래머스 2 레벨 문제이다. 문제 주소: https://school.programmers.co.kr/learn/courses/30/lessons/154538 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해석 딱히 해석할 내용이 없다.. x, y, n이 주어지며 다음과 같은 3가지 규칙이 주어진다. n 더하기 2 곱하기 3 곱하기 위 3가지 규칙을 이용해서 x를 y로 변환하는 최단 연산 횟수를 구하는 문제이다. 문제 풀이 3가지 연산 규칙은 cal 함수를 만들어 따로 구현해주었다. bfs를 통해 같은 연산 횟수 내에서 순차적으로 답을 찾아나가면 ..

Diary & 후기

[원티드] 2022 3rd 쇼미더코드 후기

처음으로 쇼미더코드 문제를 풀어보았다. 코딩 테스트 결과에 따라 배지를 부여받을 수 있다고 한다. 사실 아직도 코딩테스트는 익숙지 않은 것 같다.. 문제도 꼼꼼히 읽어봐야겠다.. A. 누적합을 이용한 문제이다. 문제를 잘못읽어 1 또는 2의 가장 긴 길이를 반환하도록 구현해서 틀렸다. https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 백준의 해당 문제와 매우 유사하다. 1인 경우 + 1, 2인 경우 -1로 계산하고, 음수가 되는 경우 시작점을 초기화하여 0..

알고리즘/BOJ

[백준/파이썬] 14942번 개미

https://www.acmicpc.net/problem/14942 14942번: 개미 자연수 n이 주어진다. n은 방의 개수이다. (1 ≤ n ≤ 105) 다음 n개의 줄에는 차례대로 현재 각각의 개미가 보유하고 있는 에너지 값이 주어진다. i+1번째 줄에는 i번째 방에 있는 개미가 가진 에너 www.acmicpc.net 문제 & 테스트 케이스 문제 해석 각 노드에 개미가 한마리 존재하며, 에너지가 주어진다. 개미들은 최대한 최상단 (1번 노드)로 이동해야 한다. 간선에는 이동하는데 필요한 에너지가 주어진다. 개미들이 최대한 1번노드 (최상단)으로 이동할 때 멈추게 되는 위치를 출력하는 문제이다. 코드 from collections import deque input = __import__('sys')...

알고리즘/BOJ

[백준/파이썬] 17071번 숨바꼭질 5

https://www.acmicpc.net/problem/17071 17071번: 숨바꼭질 5 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 500,000)에 있고, 동생은 점 K(0 ≤ K ≤ 500,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net 문제 & 테스트 케이스 문제 해석 1. 수빈이와 동생의 좌표가 주어진다. 2. 수빈이는 동생의 좌표로 이동해야한다. 3. 수빈이의 이동 방법은 -1, +1, *2 총 3가지 이며 모두 1초가 소요된다. 4. 동생은 매초 1, 2, 3만큼 앞으로만 이동한다. 코드 from collections import deque n, k = map(int, input().s..

알고리즘/BOJ

[백준/파이썬] 13913번 숨바꼭질 4

https://www.acmicpc.net/problem/13913 13913번: 숨바꼭질 4 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제 & 테스트 케이스 문제 해석 1. 수빈이와 동생의 좌표가 주어진다. 2. 수빈이는 동생의 좌표로 이동해야한다. 3. 수빈이의 이동 방법은 -1, +1, *2 총 3가지 이며 모두 1초가 소요된다. 4. 동생을 잡는 최소 시간과 경로를 구하는 문제. 코드 from collections import deque n, k = map(int, input().split..

알고리즘/BOJ

[백준/파이썬] 14226번 이모티콘

https://www.acmicpc.net/problem/14226 14226번: 이모티콘 영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다. 영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만 www.acmicpc.net 문제 & 테스트 케이스 문제 해석 1. 현재 이모티콘 복사 2. 복사된 클립보드의 이모티콘 붙여넣기 3. 현재 이모티콘 하나 삭제 이 3가지 기능을 통해 주어진 입력의 수의 이모티콘을 만드는 문제이다. 이때 클립보드의 이모티콘이 0개일 때 붙여넣을 수 없다. 코드 from collections import deque input = __import__('sys').stdin.readline targe..

알고리즘/BOJ

[백준/파이썬] 18405번 경쟁적 전염

https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net 문제 해석 n * n 크기의 배열에 바이러스가 1~ 1000개가 존재한다. 바이러스는 상하좌우로 번지며 1번부터 차례대로 한칸씩 번진다. 빈칸이여야 바이러스가 번질 수 있다. S초 이후에 x, y칸에 존재하는 바이러스를 출력하라 (없다면 0 출력) 코드 from collections import deque input = __import__('sys').stdin.re..

알고리즘/BOJ

[백준/파이썬] 11967번 불켜기

https://www.acmicpc.net/problem/11967 11967번: 불켜기 (1, 1)방에 있는 스위치로 (1, 2)방과 (1, 3)방의 불을 켤 수 있다. 그리고 (1, 3)으로 걸어가서 (2, 1)방의 불을 켤 수 있다. (2, 1)방에서는 다시 (2, 2)방의 불을 켤 수 있다. (2, 3)방은 어두워서 갈 수 없으 www.acmicpc.net 문제 해석 입력에서 n * n 크기의 방이 주어지고, m개의 입력이 주어진다. m개의 입력에서는 x, y, a, b가 주어지고, (x, y)방에는 (a, b)방의 불을 켤 수 있는 스위치가 존재한다. 불을 켤 수 있는 방의 최대 개수를 출력하는 문제이다. 코드 from collections import deque # input input = _..

ddingmin00
'BFS' 태그의 글 목록