전체 글 51

[BOJ C++] 백준 14502번: 연구소

📚 문제[BOJ C++] 백준 14502번: 연구소https://www.acmicpc.net/problem/14502 📝 입력 및 출력 🔎 문제 풀이조합(Backtracking)으로 벽을 세울 위치 3개를 선택하고, BFS(너비 우선 탐색)로 바이러스를 확산시키는 시뮬레이션을 결합하여 해결했다.자세한 구현 방법은 다음과 같다.초기 위치 저장: 입력을 받으면서 빈칸(0)의 위치는 blank 벡터에, 바이러스(2)의 위치는 virusPos 큐에 별도로 저장한다. 빈칸은 나중에 벽을 세울 조합을 뽑기 위함이고, 바이러스는 BFS를 시작할 시작점들이기 때문이다.벽 세우기 (조합): blank 벡터에 저장된 좌표들 중 3개를 선택한다. 재귀 함수를 이용한 백트래킹 방식으로 구현하였으며, 벽을 세운 뒤(1..

백준 문제풀이 2026.03.27

[BOJ Java] 백준 4179번: 불!

📚 문제[BOJ Java] 백준 4179번: 불!https://www.acmicpc.net/problem/4179 📝 입력 및 출력 🔎 문제 풀이Node에 좌표, 시간, 상태(불인지 지훈이인지 관리)를 함께 담아 관리한다.큐에 불(F)의 위치를 먼저 넣고, 마지막에 지훈이의 위치(J)를 넣는다. (불길이 먼저 번지고 지훈이가 불을 피해 이동해야하기 때문.)불이 번진 곳이나 지훈이가 지나간 곳은 visited 배열에 방문 표시한다.지훈이의 다음 좌표가 미로의 범위를 벗어난다면 탈출한 것 !큐에 더 이상 지훈이가 이동할 위치가 없다면 탈출 불가. IMPOSSIBLE 출력.처음에는 불의 위치를 저장하는 큐와 지훈이의 위치를 저장하는 큐를 따로 관리하려고 생각했는데, 시간별로 처리하기 어려워 하나의 큐에 ..

백준 문제풀이 2026.03.07

[이론_Java 기초] Map? Set?

🤔 Map? Set?Map은 Key(키)-Value(값)을 하나의 쌍으로 묶어 저장하는 자료구조를 말한다. 데이터를 찾을 때 Key를 이용하며, Key는 중복될 수 없다. 구현 클래스는 HashMap, TreeMap, LinkedHashMap이 있다. Set은 수학의 집합 개념이며, 데이터의 중복을 허용하지 않는다는 것이 가장 큰 특징이다.구현 클래스는 HashSet, TreeSet, LinkedHashSet이 있다. 💡 HashMap? HashSet?Map과 Set을 구현할 때는 보통 HashMap과 HashSet을 사용한다. 이 둘은 해싱을 기반으로 하여 빠른 속도를 자랑한다. HashMap은 데이터를 키-값 쌍으로 저장한다. 순서를 보장하지 않지만, 데이터를 넣거나 찾을 때 시간 복잡도 O(1..

이론 2026.02.07

[이론] 스위핑 알고리즘

🤔 스위핑 알고리즘이란? : '빗자루로 쓸기' 기법. 특정 방향으로 가상의 선을 옮겨가며 마주치는 사건을 순서대로 처리하는 방식. 스위핑 알고리즘을 사용하는 가장 큰 이유는 효율성이다. 2차원 평면의 문제를 1차원적인 순서 문제로 변환하기 때문에 전체 데이터를 다 확인해보지 않아도 정답을 찾아낼 수 있기 때문이다.보통 정렬에 $O(N log N)$이 걸리고, 각 사건을 처리할 때 트리 구조 등을 사용하면 $O(N log N)$이 걸리므로 전체 시간 복잡도를 확 낮출 수 있다. 🛠️ 동작 원리1. 정렬 (Sorting): 모든 요소를 처리할 방향에 맞춰 정렬한다. ex) x 좌표 순, y 좌표 순 ...2. 처리 (Processing): 정렬된 순서대로 요소를 확인하며 현재 위치에서의 상태를 업데이트..

이론 2026.02.04

[BOJ Java] 백준 2170번: 선 긋기

📚 문제[BOJ Java] 백준 2170번: 선 긋기 https://www.acmicpc.net/problem/2170 📝 입력 및 출력 🔎 문제 풀이선분의 양 끝 점을 입력받고, 시작점($x$)을 기준으로 오름차순 정렬한다. 만약 시작점($x$)이 같다면 끝점($y$)을 기준으로 정렬한다.list.sort((list1, list2) -> { // x 순으로 정렬. if (list1[0] == list2[0]) return list1[1] - list2[1]; return list1[0] - list2[0];}); 정렬은 위 코드와 같이 람다식으로 구현했다. 시작점이 같으면 끝점을 기준으로 정렬하는 것이다. 첫 번째 선분의 양 끝을 변수로 저장해 두고, 입력된 선분들을 순회하며 범위를 확장한다...

백준 문제풀이 2026.02.04

[이론_Java 기초] Queue 구현체 비교

🤔 큐?큐는 FIFO (First-In-First-Out, 선입선출) 구조의 자료구조이다. 말 그대로 먼저 들어온 데이터가 먼저 나가는 구조이다.삽입 연산은 큐의 뒤에서만, 삭제 연산은 큐의 앞에서만 이루어 진다. 🌠 java.util.Queue자바에서 큐 인터페이스의 주요 메서드를 살펴보자. 동일한 역할을 하는 메서드가 두 가지씩 있는데, 예외를 던지는 방식과 null이나 false를 반환하는 방식으로 나누어진다.기능예외 발생 (Throws Exception)값 반환 (Returns value)추가add(e)offer(e)삭제remove()poll()큐의 맨 앞에 있는 원소 확인element()peek() 값을 반환하는 메서드를 사용하면 큐가 비어있을 때 연산을 수행하더라도 프로그램이 종료되지..

이론 2026.02.02

[BOJ Java] 백준 24465번: 데뷔의 꿈

📚 문제[BOJ Java] 백준 24465번: 데뷔의 꿈https://www.acmicpc.net/problem/24465 📝 입력 및 출력 🔎 문제 풀이먼저 기존 멤버 7명의 생일을 입력받고, 어느 별자리인지 체크한다. check 함수를 따로 만들어 활용하였고, star 배열에 유무를 저장하였다.오디션 지원자 수 N을 입력받고, N개의 줄에서 지원자들의 생일을 입력받을 때마다 어느 별자리인지 체크하고, 기존 멤버와 겹치지 않는 별자리인 경우에만 생월, 생일을 int 배열로 List에 저장한다.Collections.sort()로 생월을 기준으로 정렬하고, 생월이 같은 경우에는 람다식을 활용하여 생일을 기준으로 리스트를 정렬한다. 아래에서 람다식에 대한 설명을 좀 더 자세히 하겠다.리스트가 비어있는..

백준 문제풀이 2026.01.18

[BOJ C++] 백준 10914번: Veni, vidi, vici

📚 문제[BOJ C++] 백준 10914번: Veni, vidi, vicihttps://www.acmicpc.net/problem/10914 📝 입력 및 출력 🔎 문제 풀이문제 본문에 있는 그대로 해결하면 되는 문제이다. 근데 브론즈 1인데 무려 4번이나 틀려버린 문제... 그래서 내가 틀렸던 원인들을 찾아 적어보려고 한다. 처음에는 getline으로 한 줄을 전부 받고 다시 읽는 방식으로 해결하려 했는데, 공백을 처리하기가 애매해져서 while문의 조건문에 cin>>str을 넣는 것으로 변경하였다. while문이 끝날 때 공백을 하나씩 출력해주기만 하면 된다.str의 길이가 홀수이면, 맨 뒤에 있는 문자는 더미 글자이므로 pop_back() 함수를 사용하여 미리 제거한다."x"를 "yz"로 암호..

백준 문제풀이 2025.12.22

[BOJ C++] 백준 1916번: 최소비용 구하기

📚 문제[BOJ C++] 백준 1916번: 최소비용 구하기https://www.acmicpc.net/problem/1916 📝 입력 및 출력 🔎 문제 풀이 구현 과정이 문제는 앞서 공부했던 이론인 다익스트라 알고리즘을 활용하여 해결할 수 있다.[이론] 다익스트라 알고리즘다익스트라 알고리즘이란? 하나의 정점에서 출발하여 그래프 상의 다른 모든 정점까지의 최단 경로를 찾는 알고리즘이다.주의해야 할 점은 노드에서 노드로 가는 간선이 유일하지 않다는 점이다. 즉, A 도시에서 B 도시로 가는 버스가 여러 개 존재할 수 있다.자세한 구현 방법은 다음과 같다. 먼저 버스의 정보를 모두 받아 2차원 벡터(v)에 저장한다. 두 도시를 연결하는 버스 정보가 없는 길은 무한으로 나타내야 하므로 초기값을 모두 I..

백준 문제풀이 2025.12.20

인천 유명 두바이 쫀득쿠키 내돈내산 비교 후기 : 팔레트디저트, 르호베, 아롬베이크, 디저트릭, 한정선 녹 서울역점

자세한 후기는 이곳에! 직접 맛보고 비교하며 상세하게 작성한 글입니다 ㅎㅎ. https://m.blog.naver.com/chammnaa/224100623423 인천 유명 두바이 쫀득쿠키 내돈내산 비교 후기 : 팔레트디저트, 모니모니 본점, 아롬베이크, 디안녕하세요! 요즘 두바이 열풍이 식을 줄 모르죠?? 아무리 블로그 리뷰들을 봐도 어떤 차이인지 모르겠더라...blog.naver.com 😋 결론두바이 쫀득쿠키는르호베 > 디저트릭 > 아롬베이크 > 팔레트디저트​두바이 수건 케이크는팔레트디저트 > 디저트릭 > 아롬베이크로 결론 내렸습니다 ㅎ 맛과 가격, 웨이팅까지 고려해서 같이 먹은 친구들이랑 열띤 토론한 결과예요. 아롬베이크랑 팔레트디저트 두바이 쫀득쿠키는 기대가 넘 커서 그랬나 생각보단 조금 아쉬웠어..

냠냠 2025.12.14