[백준] 2606번 바이러스, 파이썬 문제 풀이, DFS와 BFS 차이
Computer Science/알고리즘 문제2022. 1. 25. 16:23[백준] 2606번 바이러스, 파이썬 문제 풀이, DFS와 BFS 차이

문제 백준 2606번 바이러스 문제를 해결했습니다. 1번 컴퓨터와 연결되어 있는 컴퓨터, 간접적으로 연결되어 있는 컴퓨터도 웜 바이러스에 감염됩니다. 이 때, 1번으로부터 감염된 컴퓨터가 몇 대인지 찾는 문제입니다. https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 문제 풀이 컴퓨터간 상하관계나 방향이 없기 때문에 그래프 문제로 해결할 수 있었습니다. 1번과 연결되어 있는 컴퓨터를 탐색하는 문제이므로 DFS와 BFS로 해결할 수 있습니다. 이번 문제는..

[백준] 2579번 계단 오르기, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 24. 17:09[백준] 2579번 계단 오르기, 파이썬 문제 풀이

문제 백준 2579번 계단 오르기 문제를 해결했습니다. https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제와 그림이 함께 있기 때문에, 가독성을 위해 문제 내용은 생략하도록 하겠습니다. 링크를 참고해주세요! 문제 풀이 해당 문제는 세 가지 조건이 있는 문제입니다. 한 번에 한 계단 혹은 두 계단씩 오를 수 있다. 연속된 세 개의 계단을 모두 밟아서는 안된다. 단, 시작점은 계단에 포함되지 않는다. 마지막 도착 계단은 반드시 밟아야 한다. 해당 규칙을 지키..

[백준] 1463번 1로 만들기, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 21. 19:11[백준] 1463번 1로 만들기, 파이썬 문제 풀이

문제 백준 1463번 주어진 정수를 특정 연산을 통해 1로 만들 때, 최소한의 연산 횟수를 찾는 문제를 해결했습니다. https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다. X가 3으로 나누어 떨어지면, 3으로 나눈다. X가 2로 나누어 떨어지면, 2로 나눈다. 1을 뺀다. 정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오. 예시: 10 입력 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. ..

[백준] 1012번 유기농 배추, 파이썬 문제풀이
Computer Science/알고리즘 문제2022. 1. 20. 18:49[백준] 1012번 유기농 배추, 파이썬 문제풀이

문제 백준 1012번 유기농 배추 밭에 키우는 배추를 유기농으로 키우기 위해 지렁이를 얼마나 풀어놔야 할지 구하는 문제를 해결했습니다. https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 문제 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며 해충을 잡아 ..

[백준] 12755번 수면 장애, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 19. 13:59[백준] 12755번 수면 장애, 파이썬 문제 풀이

문제 백준 12755번 수면 장애를 극복하기 위해 숫자를 세는데, 숫자를 이어 붙였을때 주어진 N번째 숫자는 무엇인지 찾는 문제를 해결했습니다. https://www.acmicpc.net/problem/12755 12755번: 수면 장애 수면 장애를 가진 강민이는 잠이 오지 않아 적잖은 고통을 느끼고 있다. 강민이는 잠이 오지 않을 때마다 속으로 양을 세고 있었는데, 오늘따라 백만 마리까지 세었는데도 잠이 오지 않았다. 한 www.acmicpc.net 문제 수면 장애를 가진 강민이는 잠이 오지 않아 적잖은 고통을 느끼고 있다. 강민이는 잠이 오지 않을 때마다 속으로 양을 세고 있었는데, 오늘따라 백만 마리까지 세었는데도 잠이 오지 않았다. 한계를 느낀 강민이는 새로운 방법으로 수를 세기로 했다. 1부터 ..

[백준] 1461번 도서관, 파이썬 문제풀이
Computer Science/알고리즘 문제2022. 1. 17. 19:45[백준] 1461번 도서관, 파이썬 문제풀이

문제 백준 1461번 최소한의 걸음으로 책을 되돌려놓는 문제를 해결했습니다. https://www.acmicpc.net/problem/1461 1461번: 도서관 세준이는 도서관에서 일한다. 도서관의 개방시간이 끝나서 세준이는 사람들이 마구 놓은 책을 다시 가져다 놓아야 한다. 세준이는 현재 0에 있고, 사람들이 마구 놓은 책도 전부 0에 있다. 각 책 www.acmicpc.net 문제 세준이는 도서관에서 일한다. 도서관의 개방시간이 끝나서 세준이는 사람들이 마구 놓은 책을 다시 가져다 놓아야 한다. 세준이는 현재 0에 있고, 사람들이 마구 놓은 책도 전부 0에 있다. 각 책들의 원래 위치가 주어질 때, 책을 모두 제자리에 놔둘 때 드는 최소 걸음 수를 계산하는 프로그램을 작성하시오. 세준이는 한 걸음에..

[백준] 2812번 크게 만들기, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 16. 14:24[백준] 2812번 크게 만들기, 파이썬 문제 풀이

문제 백준 2812번 주어진 숫자에서 K개의 숫자를 없앴을 때 가장 큰 수를 만드는 문제를 해결했습니다. 문제 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ K < N ≤ 500,000) 둘째 줄에 N자리 숫자가 주어진다. 이 수는 0으로 시작하지 않는다. 예시: 7 3 1231234 출력 입력으로 주어진 숫자에서 K개를 지웠을 때 얻을 수 있는 가장 큰 수를 출력한다. 예시: 3234 풀이 과정 그리디 알고리즘으로 해결할 수 있는 문제를 찾았기 때문에, 그리디 알고리즘으로 접근했습니다. 그리디 알고리즘이란, 현재 선택할 수 있는 가장 최적의 선택을 하는 것입니다. 당장은 최적의 선택일 수 ..

[백준] 1662번 압축, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 12. 15:24[백준] 1662번 압축, 파이썬 문제 풀이

문제 백준 1662번 압축된 문자열의 길이를 찾는 문제를 해결했습니다. https://www.acmicpc.net/problem/1662 1662번: 압축 압축되지 않은 문자열 S가 주어졌을 때, 이 문자열중 어떤 부분 문자열은 K(Q)와 같이 압축 할 수 있다. K는 한자리 정수이고, Q는 0자리 이상의 문자열이다. 이 Q라는 문자열이 K번 반복된다는 뜻이 www.acmicpc.net 문제 압축되지 않은 문자열 S가 주어졌을 때, 이 문자열중 어떤 부분 문자열은 K(Q)와 같이 압축 할 수 있다. K는 한자리 정수이고, Q는 0자리 이상의 문자열이다. 이 Q라는 문자열이 K번 반복된다는 뜻이다. 압축된 문자열이 주어졌을 때, 이 문자열을 다시 압축을 푸는 프로그램을 작성하시오. 입력 첫째 줄에 압축된 ..

image