본문 바로가기
728x90

알고리즘 문제 풀이22

백준 온라인 저지(BOJ) 문제 난이도 및 랭킹 확인하는 서비스, solved.ac 정리!! 처음 백준 온라인 저지(BOJ) 사이트에서 문제를 풀게 되면, 어떤 문제부터 풀어야 할지 이 문제가 어려운 문제인지 쉬운 문제인지 알기가 어렵습니다. 저의 경우에도 이런 문제로 인해 초반에 고생을 했었기 때문에, 이러한 문제를 해결해줄 solved.ac를 소개해보려 합니다. 😀 solved.ac 링크 👇🏼👇🏼👇🏼 solved.ac 알고리즘 문제해결 학습의 이정표 🚩 Baekjoon Online Judge 난이도 및 티어 정보 제공 solved.ac BOJ 사이트를 로그인한 후에 설정 창에서 좌측에 있는 solved.ac 탭을 누르면 다음과 같은 화면이 등장합니다. 저는 이미 사용 중이기 때문에, 위와 같이 화면이 나오지만, 아마 처음 사용해보시는 분들은 사용하기 버튼이 나올 것이고, 사용하기 버튼을 누르.. 2022. 8. 30.
BOJ - 2110번 공유기 설치 문제, 이분 탐색 문제 풀이! (with C++) 이번에 풀이한 문제는 이분 탐색 알고리즘을 이용해 풀이해야 하는 문제였습니다. 이분 탐색 문제를 평소에 잘 풀이해보지 않아 오랜만에 풀게 되었는데, 역시나 개념 자체에 서툴러서 이전에 정리했음에도 불구하고 풀이하는데 어려움을 느껴 다른 분들의 개념을 적극적으로 참고해 풀이하게 되었습니다. 문제 링크는 여깄습니다! 😁 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 2110번 문제 설명 우선 문제는 도현이가 가진 N개의 집에 C개의 공유기를 설치하는데, 공유기.. 2022. 8. 28.
BOJ - 13460번 구슬 탈출 2, BFS 방식으로 풀이 (C++) 1. 문제 소개 이번에는 BFS 관련해서 풀이할 문제를 찾아보다가 적당히 어려울 것 같은 느낌 같아서 13460번 문제를 풀이했던 과정을 정리해 보려고 합니다. https://www.acmicpc.net/problem/13460 13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net 아무리 어려워도 그래프 탐색인데, 라고 생각했는데 골드 1 난이도가 괜히 책정된 게 아닌 느낌으로 풀이하는데 굉장히 까다로웠습니다. 제 풀이 과정을 정리하기에 앞서 문제 설명을 간략하게 해.. 2022. 8. 25.
BOJ - 1022번 소용돌이 예쁘게 출력하기, 구현 문제 (with C++) 이번에 풀이한 1022번 소용돌이 예쁘게 출력하기 문제는 구현 유형의 문제로, 제가 구현 문제 풀이에 취약한 것 같아서 풀게 되었습니다. 😂 문제 링크 1022번: 소용돌이 예쁘게 출력하기 첫째 줄에 네 정수 r1, c1, r2, c2가 주어진다. www.acmicpc.net 😁 문제 설명 크기가 무한인 정사각형 모눈종이가 있다. 모눈종이의 각 정사각형은 행과 열의 쌍으로 표현할 수 있다. 이 모눈종이 전체를 양의 정수의 소용돌이 모양으로 채울 것이다. 일단 숫자 1을 0행 0열에 쓴다. 그리고 나서 0행 1열에 숫자 2를 쓴다. 거기서 부터 소용돌이는 반시계 방향으로 시작된다. 다음 숫자는 다음과 같이 채우면 된다. 이 문제는 위와 같이 채운 것을 예쁘게 출력하면 된다. r1, c1, r2, c2가 입.. 2022. 8. 11.
BOJ - 2211번 네트워크 복구, dijkstra(다익스트라) 풀이 (C++) 오늘은 한 정점을 기준으로 모든 노드로 향하는 최단 거리를 구하는데 사용하는 다익스트라 알고리즘을 이용해 백준 2211번 네트워크 복구 문제를 풀이한 과정을 정리해보려 합니다. 문제 링크 2211번: 네트워크 복구 첫째 줄에 두 정수 N, M이 주어진다. 다음 M개의 줄에는 회선의 정보를 나타내는 세 정수 A, B, C가 주어진다. 이는 A번 컴퓨터와 B번 컴퓨터가 통신 시간이 C (1 ≤ C ≤ 10)인 회선으로 연결되어 있다 www.acmicpc.net 😀 문제 설명 N(1 ≤ N ≤ 1,000)개의 컴퓨터로 구성된 네트워크가 있다. 이들 중 몇 개의 컴퓨터들은 서로 네트워크 연결이 되어 있어 서로 다른 두 컴퓨터 간 통신이 가능하도록 되어 있다. 통신을 할 때에는 서로 직접 연결되어 있는 회선을 이.. 2022. 8. 6.
BOJ - 14567번 선수과목 (Prerequisite), 위상 정렬 (Topology sort) 풀이 (C++) 백준 14567번 선수과목 문제를 위상 정렬 알고리즘을 이용해 풀이한 내용을 정리해 보겠습니다.! https://www.acmicpc.net/problem/14567 14567번: 선수과목 (Prerequisite) 3개의 과목이 있고, 2번 과목을 이수하기 위해서는 1번 과목을 이수해야 하고, 3번 과목을 이수하기 위해서는 2번 과목을 이수해야 한다. www.acmicpc.net 풀이 설명에 앞서 위상 정렬을 간단히 설명하자면, 위상 정렬은 선행 순서가 정해져 있는 작업을 할 때, 이 순서를 위반하지 않고 작업을 처리하는 순서를 찾고 싶을 때 사용하는 알고리즘이라고 설명할 수 있을 것 같습니다! 위상 정렬에 대해 공부해 보고 싶으신 분들은 아래의 글을 참고해주세요! https://blog.naver.c.. 2022. 7. 29.
728x90