반응형 Algorithm 알고리즘/BAEKJOON 백준15 [BOJ] 백준 2178 미로탐색 알고리즘 재활 훈련을 하고 있다..그래서 풀어본 문제부터 다시 풀어보면서 풀이법도 다르게하고 하나씩 하나씩 낱낱이 파악하면서 분석하는 형태로 진행하려한다.시간이 조금 오래걸려도 결국 이렇게 진행하는게 다시 실력을 끌어올리는 것에는 가장 빠른 시도일 것이라 생각한다.내가 이전에 미로탐색을 푼 내용은 아래 링크에 있다.https://coder-angrybird.tistory.com/32 [백준]BOJ_2178_미로 탐색_S1https://www.acmicpc.net/problem/2178 2178번: 미로 탐색첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다.www.accoder-angrybird... 2024. 9. 23. [백준] 1920번 : 수 찾기 - JAVA [자바] 백준 1654번 랜선 자르기 문제를 다시 풀려니까 기억이 안나서 찾아보다가이 문제까지 들어오게 되었다.https://www.acmicpc.net/problem/1920 1920번: 수 찾기첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들www.acmicpc.net 이 문제를 통해서 이분 탐색에 대한 개념부터 다시 잡아가려 한다.아래 내용은 https://st-lab.tistory.com/261 이 블로그의 해설을 보며 정리한 내용이다.먼저 이분 탐색이란 무엇인가.이분 탐색은 이진 탐색이라고도 불린다.가장 쉬운 예.. 2024. 3. 6. [백준] 1654번 : 랜선 자르기 오랜만에 다시 알고리즘을 시작했다.사실 매일 해야하는 것이지만 너무 하기가 싫었고,운동도 어떤 습관도 다 그렇지만 관성이 있어서 계속해서 하다보면 하게되고 안하다 보면 안하게 되기에...여튼 그래서 다시 시작하다가 이분탐색을 사용하는 문제에서 막혀서 정리하려한다.답안을 본 문제들은 이렇게 블로그에 정리를 하는 것을 목표로 하려 한다.먼저 랜선 자르기 문제에서 나는 간단하게 브루트 포스를 사용하는 방법부터 떠올렸고, 그렇게 풀었다.그런데 자꾸 시간초과도 아니고 틀려서 답안을 보게 되었다.브루트 포스를 사용해서 모든 랜선의 길이를 합친 후에내가 원하는 랜선의 수만큼 나눈다.그렇게 구해진 값이 가장 길게 나눌 수 있는 랜선이 될 것이다.그 길이부터 하나씩 줄여나가면서 나눌 수 있는 최대 랜선의 길이를 구하는 .. 2024. 3. 5. [백준]BOJ_18110_solved.ac_S4 https://www.acmicpc.net/problem/18110 18110번: solved.ac5명의 15%는 0.75명으로, 이를 반올림하면 1명이다. 따라서 solved.ac는 가장 높은 난이도 의견과 가장 낮은 난이도 의견을 하나씩 제외하고, {5, 5, 7}에 대한 평균으로 문제 난이도를 결정한다.www.acmicpc.net이 문제는 딱히 로직은 어려운게 없다.시간 초과를 피하느라 시간이 조금 걸렸다.처음에는 정렬을 Arrays로 해서 그런가 해서 Collections로 바꿨다.그래도 시간초과가 떠서 최대한 변수 선언을 없앴고,그래도 시간 초과가 떠서 BufferedReader를 사용했다. https://github.com/Headfish96/Online-Judge/tree/main GitHu.. 2023. 8. 7. [백준]BOJ_10816_숫자 카드 2_S4 https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,0www.acmicpc.net오랜만에 다시 알고리즘 게시물을 작성한다.그동안 혼자 조용히 풀기도 했고 깃헙에 올리기도 해봤는데, 내가 공부한걸 정리하기에 블로그만한게 없는 것 같다.일단 누군가에게 설명을 해야하니 더 완벽하게 이해해야하는 것도 있고, 재미도 있어 더 잘 되는 것 같다.당분간은 많은 문제를 풀기보다 한문제씩 풀면서 이곳에 정리하려한다.하도 오랫동안 풀지 않아 감이 다 떨어졌기 때문.. 2023. 8. 6. [백준]BOJ_2178_미로 탐색_S1 https://www.acmicpc.net/problem/2178 2178번: 미로 탐색첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다.www.acmicpc.net위 문제는 전형적인 BFS 알고리즘, 넓이 우선 탐색 알고리즘을 이용한 문제이다.최단거리, 최적경로와 같은 촤단, 최적이라는 단어가 쓰이면 BFS 알고리즘을 사용한다고 생각하자.BFS 알고리즘은 넓이 우선 탐색으로 노드로 트리를 구성한다고 했을때 트리의 높이, 트리의 레벨이 경로의 길이가 된다.넖이 우선 탐색은 트리로 그려지고 트리로 그린 것을 큐로 넣었다가 빼면서 간선을 이어갈 수 있다.넓이 우선 탐색에서 큐를 그리면서 이해할 수도.. 2023. 2. 20. [백준]BOJ_2563_색종이_S5 https://www.acmicpc.net/problem/2563 2563번: 색종이가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록www.acmicpc.net1. 접근한 도화지에 색종이를 여러장 놓고 색종이가 붙은 검은 영역의 넓이를 구하는 문제이다.넓이를 구하는 것이라고 해서 수학적으로 접근하여 겹치는 넓이부터해서 구하려고 하면 매우 복잡해진다.도형의 넓이를 구할때 가로와 세로를 곱해서 구할 수도 있지만, 1cm x 1cm의 칸으로 나눠서 하나씩 셀 수도 있다.이 문제도 위와같이 접근한다.도화지에 100 x 100으로 모눈이 그려져 있고, 색종이를 붙인 다음.. 2023. 2. 15. 백준 색종이 이 문제는 간단한 아이디어만 떠올리면 해결이 가능한 문제이다.수학문제처럼 좌표평면에서 면적을 계산하려하지말고좌표평면 전체를 도화지라고 생각하고 칸으로 나눠놓고 하나씩 채워나간다고 생각하면 된다.나는 방문탐색이라고 생각했다.처음 문제가 주어질때 사각형의 왼쪽 아래의 좌표와 사각형의 폭과 높이를 알려주었으니,모눈종이에서 해당하는 만큼을 칠한다고 생각했고,그 모눈종이의 각 칸을 이차원 배열로 생각했다.즉 이런 표가 있다고 생각하고0 0 10 10이라는 값을 입력받았으면(0,0)에서 폭이 10이고 높이가 10인 사각형이다.이때 (0,0)을 왼쪽 끝의 점이아니라 칸이라고 생각하면 조건에 맞는 칸을 색칠하면 된다.따라서 예제와 같이 입력된 경우를 살펴보면먼저 도화지에 가로 1000칸 세로 100칸짜리 표를 그려 주.. 2023. 2. 7. [BAEKJOON][실버1] - 단지번호 붙이기(2667번) https://www.acmicpc.net/problem/2667과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여" data-og-host="www.acmicpc.net" data-og-source-url="https://www.acmicpc.net/problem/2667" data-og-url="https://www.acmicpc.net/problem/2667" data-og-image="https://scrap.kakaocdn.net/dn/OWKqU/hyRpKcgstq/qzH2TmTNdi0jsaqzc4WtH0/img.png?width=2834&height=1480.. 2023. 1. 26. 이전 1 2 다음 반응형