목록백준 (34)
복's
슬슬 프로그래머스 LV2 문제 다 풀었지 싶어서 확인 했더니 아직도 52문제나 안풀었다...LV3 넘어가긴 해야하는데, 지금도 간간히 풀긴 하지만 주로 푸는 문제는 LV2 라서 고민이 있다.스터디 인원들이 슬슬 고착화 되면서 난이도는 계속해서 올라가는 기분은 들어서 문제 난이도가 올라간다고 쉽게 스터디가 와해되지는 않을 것 같은 느낌적인 느낌?LV2 - 지게차와 크레인 G2 - 칵테일 G5 - 1로 만들기 2칵테일 문제는 개인적으로 조금 오랫동안 고생하고 결국 다른 풀이도 참조해서 풀었다 ㅎㅎ..[ 📌 내 문제 풀이 with Java ]👉 지게차와 크레인그래프 문제인데 백준의 치즈나 빙산 같은 문제와 유사한 풀이이다.삭제해야하는 노드를 바로 삭제하면 동작중인 로직에 영향을 주기 때문에 따로 저장 했다..
그래프 문제 두 문제에 DP 문제 한 문제 풀었다. G5 1학년 - 백준G4 도시 분할 계획 - 백준G3 파티 - 백준 지금 보니까 저번 주는 전부 프로그래머스 문제 풀었는데, 이번에는 전부 백준에서 출제 되었네...?[ 📌 내 문제 풀이 with Java ]👉 1학년 2^63 - 1 이라는 엄청 큰 수가 주워졌는데... 플러스, 마이너스 연산 결과를 전부 들고 있다가 OOM 을 만나 버렸다.당연히 중복되는 숫자들이 엄청 많았고, 메모리가 터져 버렸는데 바로 떠올리지 못한게 아쉽다. 대신 문제 자체는 단순한 연산들을 메모이제이션을 통해서 누적 값만 잘 챙기면 쉽게 풀렸던 문제다./** * Author : Lee In Bok * Date : 2025.02.24(Mon) * Runtime ..
평일에 스케줄이 가득해서 멘토링과 과제 그리고 운동만으로도 알고리즘 문제 풀이 시간을 별도로 만들기 쉽지 않아서 주말에 몰아서 문제를 풀었다. 문제를 몰아서 풀다보니 코드 리뷰를 할 시간이 많이 부족해지고, 한 문제에 시간을 오래 소모하면 다른 문제에 시간을 많이 할당 못하기 때문에 부담이 되는 것 같다. 이번에 출제된 문제[G2] 인간 대포 (백준)[G5] 치킨 배달 (백준) [LV2] 멀쩡한 사각형 (프로그래머스)[ 📌 내 문제 풀이 with Java ]👉 인간 대포 다익스트라 알고리즘을 이용해서 문제를 풀이 하였는데, 코드를 살펴보면 다익스트라 로직 자체는 정말 심플하다.나는 계산기로 수소점 계산하면서 문제가 생기는 부분을 디버깅 하는 시간을 많이 사용했다. 문제를 풀이 하다가 문제가 되었던 부..

코딩 테스트 준비를 위해서 시작 했지만 이제는 일주일에 3 문제씩 꾸준히 풀고 있는데 내가 지금까지 가장 많이 푼 사이트는 백준이다.이 글을 쓰는 시점에 404 문제를 풀었다. (404 Not Found...) 내가 운영하는 알고리즘 스터디에서 가장 많은 문제가 제출되는 곳 또한 백준이다.이제는 사용한지 시간도 조금 지나서 항상 이용하는 기능만 사용하고 있지만 알고보면 친절하고 편안한 알고리즘 공부하기 좋은 공간이다.[ 📌 계정 정보 ]우측 상단의 계정을 클릭 하면 들어올 수 있는 페이지이다.많이 중요하지는 않지만 지금까지의 행보를 다시 되짚어 볼 수 있기에 나는 가끔 들어와서 나의 상황을 확인한다.[ 📌 설정 ]설정 부분이 나는 중요하다고 생각 하는데, 그 이유는 Solved.ac 랑 연동하게 되면..

https://www.acmicpc.net/problem/1074 [ 📌 서론 ]내가 마지막에 이 문제를 풀었을 때에는 Silver 1 이었는데, 언제 난이도가 상승 했다.나는 재귀 함수를 설계하는게 이상하게 어려워서 이런 문제로 연습을 많이 했는데, 오랜만에 다시 풀게 되었다.예전 풀이와 비교 했을 때 더 좋아진걸 보니 성장 했음을 느낀다. 풀이 과정에서도 과거에 이 문제를 처음 접했을 때는 문제 접근이 막막 했었고, 풀이도 정말 오래 걸렸는데, 성장이 눈에 보이지는 않지만 아주 조오오오금 늘었다고 생각해도 되지 않을까..?[ 📌 풀이 ]다양한 풀이가 있겠지만 주어진 2차원 배열이 2^N * 2^N 사이즈를 유지하기 때문에 복잡한 계산 없이 풀 수 있고, 4 개의 사분면으로 나눠서 문제를 풀이 할 ..

[ 📌 서론 ]https://www.acmicpc.net/problem/2458 단순히 그래프 탐색으로도 풀이가 가능할 거라고 생각은 되는게 그래프를 정, 역방향 2개 만들고 탐색 알고리즘을 수행한다면정방향: 나보다 큰 키의 학생들역방향: 나보다 작은 키의 학생들선택한 노드 기준으로 다른 학생들과의 키 상하 관계를 알 수 있을 것 같지만, 나는 플로이드-워셜 알고리즘을 연습하기 위해서 알고리즘 분류에서 선택해서 문제를 골랐다.[ 📌 풀이 ]중요한점은 어떤 노드가 크고 작은지가 중요한게 아니라 도달할 수 있는지가 중점이다. 그래프 구성하기도달 여부만 알면 되기 때문에 true/false 로 노드 관계를 구성했다.정방향은 입력으로 주어진다.플로이드-워셜 알고리즘 수행경유 노드를 거쳐서 도달할 수 있는지 ..

https://www.acmicpc.net/problem/11404 플로이드 워셜(Floyd-Warshall) 알고리즘을 접하게 되어서 알고리즘 연습을 위해서 찾다가 풀게된 문제다.예전에 문제를 풀 때 다익스트라 알고리즘은 음의 가중치를 해결하지 못해서 고민하다가 이름만 기억하고 있다가 기회가 왔을 때 문제로 연습 하였다.[ 📌 풀이 ]그래프 구성다른 그래프 문제와 동일하게 출발 -> 도착 (비용) 을 기록할 수 있도록 구성한다.플로이드 워셜 알고리즘경유 노드를 정해서 다른 노드가 지나가면서 INF 로 설정했던 경로를 도달할 수 있는지 체크한다.V^3 시간 복잡도를 갖고, V^2 의 공간 복잡도를 갖기 때문에 불필요한 연산을 최소로 한다.출력 값 포맷 맞춰주기문제에서 요구하는 출력 방식을 맞춰준다. (..

https://www.acmicpc.net/problem/2023 2023번: 신기한 소수 수빈이가 세상에서 가장 좋아하는 것은 소수이고, 취미는 소수를 가지고 노는 것이다. 요즘 수빈이가 가장 관심있어 하는 소수는 7331이다. 7331은 소수인데, 신기하게도 733도 소수이고, 73도 소수 www.acmicpc.net 소수를 구하는 문제 + 그래프 or 백트래킹을 통한 완전탐색 문제라고 생각했다. 처음에는 에라토스테네스의 체를 사용해서 문제를 풀었었는데 주어진 메모리가 4MB로 적어서 메모리 초과가 났다. 범위가 주어지고 같은 수에 대해서 여러번 소수 판별을 해야할 것 같아서 에라토스테네스의 체가 적합할 것 같았는데 메로리 초과는 예상 밖이였다. [ 📌 풀이 ] 소수를 판별하는 방법 제곱근을 이용한 ..

https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 문제에 대한 설명은 쉽게 이해 되었지만 접근 방식에 대해서는 쉽게 와닿지 않아서 고민 많이 했다. 고민 하는 것 보다 직접 쓰는게 시간이 덜 아까워서 쓰다 보니까 어느정도 감은 잡았다. 질문 게시판을 통해서 힌트도 접했고 풀이 방법이 한개가 아니였다는걸 알게 되었다. [ 📌 풀이 ] N의 값이 올라갈 때 마다 2가지의 고려 사항이 생긴다 1의 자리가 0 뒤에 0 혹은 1이 와도 이친수가..

https://www.acmicpc.net/problem/14606 14606번: 피자 (Small)예제1의 입력이 1이므로, 게임 시작부터 갑이 분리할 수 있는 피자탑이 없습니다. 따라서 갑이 얻는 즐거움은 0입니다. 예제2의 정답 3은 다음과 같은 과정을 통해 얻어집니다. 먼저 놀이를 시작www.acmicpc.net 주어진 수를 나누다보면 중복된 값이 나오기 때문에 DP 알고리즘 문제이다.N의 범위가 작게 주어져서 DP 풀이가 아니여도 풀 수 있을거 같은데, 풀이는 메모이제이션으로 풀었다.[ 📌 풀이 ]주어진 수를 최대한 쪼갠다높이가 1 인 피자탑으로 분리 시키라는 조건이 있었기 때문에 1까지 쪼갠다DP 테이블이 비어있다면 값을 채우고, 값이 채워져 있다면 해당 값을 return 한다.DP 테이블을..