b.2075 N번째 큰 수
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/2075   📌 자바(Java)로 푸는 N번째 큰 수 문제 - 백준 2075 🧮 🔎 문제 개요 백준 2075번 - N번째 큰 수 문제입니다.N x N 크기의 행렬이 주어졌을 때, 모든 수를 정렬했을 때 N번째로 큰 수를 구하는 문제입니다. • 단순 정렬로 풀 수 있지만, 효율적인 풀이가 중요합니다. • 메모리 제한과 시간 제한을 고려하면 우선순위 큐 사용이 더 적절합니다. 💡 예제 입력512 7 9 15 513 8 11 19 621 10 26 31 1648 14 28 35 2552 20 32 41 49💡 예제 출력35➡ 모든 수 중 5번째로 큰 수(내림차순 정렬 기준)는 35 🛠 접근 방식 현재 코드는 모든 값을 배열에 넣고 정렬한 뒤 ..
Lv 3. 광고 삽입
·
Algorithm & Data Structures/Programers
https://school.programmers.co.kr/learn/courses/30/lessons/72414  📌 자바(Java)로 푸는 광고 삽입 문제 - 프로그래머스 📺📊🔎 문제 개요 프로그래머스 Lv.3 - 광고 삽입 문제입니다.하루 동안의 동영상 재생 기록(logs)이 주어졌을 때,광고를 삽입할 시작 시간을 정해서, 전체 광고 누적 시청 시간을 최대화하는 문제입니다.💡 예제 입력play_time = "02:03:55"adv_time = "00:14:15"logs = [ "01:20:15-01:45:14", "00:40:31-01:00:00", ...]💡 예제 출력"01:30:59"➡ 해당 시각에 광고를 삽입했을 때 광고 누적 시청 시간이 최대가 되는 시각을 반환🛠 알고리즘 ..
b.3273 두 수의 합
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/3273   📌 자바(Java)로 푸는 두 수의 합 문제 - 백준 3273  🔎 문제 개요 백준 3273번 - 두 수의 합 문제입니다.정수 N개로 이루어진 수열이 주어질 때,서로 다른 두 수를 더해서 target이 되는 경우의 수를 구하는 문제입니다.조건은 다음과 같습니다: • 한 쌍은 한 번만 셈 • 중복 없이, 오름차순 또는 내림차순 상관없이 쌍을 구성 💡 예제 입력9 5 12 7 10 9 1 2 3 11 13💡 예제 출력3➡ 5+8, 1+12, 2+11 총 3쌍이 존재 🛠 알고리즘 접근 방식 이 문제는 대표적인 투 포인터(Two Pointer) 기법으로 해결할 수 있습니다. ✏️ 주요 고려 사항 • 배열을 정렬한 후, 왼쪽 포인터..
Lv 4. 호텔 방 배정
·
Algorithm & Data Structures/Programers
https://school.programmers.co.kr/learn/courses/30/lessons/64063 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   📌 자바(Java)로 푸는 호텔 방 배정 문제 - 프로그래머스 🏨🔎 문제 개요프로그래머스 - 호텔 방 배정 문제입니다.호텔에는 k개의 방이 있으며, 손님이 원하는 방을 요청하면 비어 있으면 배정하고,비어있지 않다면 가장 가까운 빈 방을 배정해야 합니다.🚪 여러 손님이 들어오면서 빠르게 배정하는 것이 핵심입니다.💡 예제 입력long k = 10;long[] room_number = {1, 3, 4, 1, 3, 1};💡 예제 출력[1..
b.11657 타임머신
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/11657   📌 자바(Java)로 푸는 타임머신 문제 - 백준 11657 ⏳ 🔎 문제 개요 백준 11657번 - 타임머신 문제입니다.N개의 도시와 M개의 버스 노선이 주어질 때,“1번 도시에서 다른 모든 도시로 가는 최단 시간” 을 구하는 문제입니다.🕰 단, 음수 가중치(시간이 감소하는 경우)도 존재할 수 있으며, 음수 사이클 여부를 판별해야 합니다. 💡 예제 입력3 41 2 41 3 32 3 -23 1 -1💡 예제 출력43-1➡ 1번 도시에서 각각 2번, 3번으로 가는 최단 거리 출력 (도달 불가능 시 -1) 🛠 알고리즘 접근 방식 이 문제를 해결하기 위해 벨만-포드 알고리즘(Bellman-Ford Algorithm) 을 사용합니다...
b1956. 운동
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/1956   📌 자바(Java)로 푸는 운동 문제 - 백준 1956 🚴‍♂️🔎 문제 개요 백준 1956번 - 운동 문제입니다.V개의 마을과 E개의 도로가 주어졌을 때,“한 마을에서 출발하여 다시 그 마을로 돌아오는 최소 사이클의 길이” 를 구하는 문제입니다.🚴 즉, 최단 사이클(순환 경로)의 길이를 찾는 것이 핵심입니다. 💡 예제 입력3 41 2 13 1 12 3 11 3 5💡 예제 출력3➡ 최단 사이클의 길이가 3인 경우를 찾아 출력 🛠 알고리즘 접근 방식 이 문제를 해결하기 위해 플로이드-워셜 알고리즘(Floyd-Warshall Algorithm) 을 사용합니다. ✏️ 주요 고려 사항 ✔ 모든 정점 간 최단 경로를 계산해야 함✔ 각..
Lv 3. 미로 탈출 명령어
·
Algorithm & Data Structures/Programers
https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   📌 자바(Java)로 푸는 미로 탈출 명령어 문제 - 최적화 과정 🚀 🔎 문제 개요 프로그래머스 - 미로 탈출 명령어 문제입니다.주어진 N x M 크기의 미로에서 출발지(x, y)에서 도착지(r, c)까지 정확히 k번 이동하여 도달하는 가장 빠른 경로를 찾는 문제입니다.단, 사전순("d" → "l" → "r" → "u")으로 가장 빠른 경로를 찾아야 합니다. 💡 예제 입력int n = 3, m = 4;int x = 2, y = 3,..
b.1707 이분 그래프
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/1707   📌 자바(Java)로 푸는 이분 그래프 판별 문제 - 백준 1707 🚀 🔎 문제 개요 백준 1707번 - 이분 그래프 판별 문제입니다.주어진 무방향 그래프가 이분 그래프인지 판별하는 것이 목표입니다. 이분 그래프란? • 모든 정점을 두 개의 그룹으로 나눌 수 있는 그래프 • 같은 그룹 내 정점끼리는 서로 연결되지 않아야 함 • 즉, 인접한 정점은 항상 다른 그룹에 속해야 함 💡 예제 입력23 21 32 34 41 22 33 44 1💡 예제 출력YESNO➡ 첫 번째 그래프는 이분 그래프이며, 두 번째 그래프는 이분 그래프가 아님 🛠 알고리즘 접근 방식 BFS(너비 우선 탐색) 또는 DFS(깊이 우선 탐색)를 활용한 그래프 색칠..
Lv 3. 보행자 천국
·
Algorithm & Data Structures/Programers
https://school.programmers.co.kr/learn/courses/30/lessons/1832 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   📌 자바(Java)로 푸는 보행자 천국 문제 풀이 🚦🔎 문제 개요이 문제는 프로그래머스 - 보행자 천국 문제입니다.주어진 도시 지도(cityMap[][]) 에서 출발점(0,0)에서 도착점(m-1, n-1)까지 가는 경로의 개수를 구하는 문제입니다.특정한 규칙(통행 불가 지역, 직진만 가능한 도로 등)이 존재하며,경로의 개수를 MOD(20170805)로 나눈 나머지를 출력해야 합니다.💡 예제 입력int m = 3;int n = 6;int..
b24480. 알고리즘 수업 - 깊이 우선 탐색 2
·
Algorithm & Data Structures/BOJ
https://www.acmicpc.net/problem/24480   📌 자바(Java)로 푸는 깊이 우선 탐색(DFS) - 백준 24480 문제 풀이 🚀🔎 문제 개요이 문제는 백준 24480번 - 깊이 우선 탐색 2 문제입니다.주어진 그래프를 깊이 우선 탐색(DFS)하며 방문 순서를 기록해야 합니다.단, 내림차순(큰 숫자부터) 으로 방문해야 한다는 점이 특징입니다.💡 예제 입력5 5 11 41 22 32 43 4💡 예제 출력14320➡ 1번 정점부터 내림차순으로 DFS 탐색하며 방문 순서를 출력해야 합니다.🛠 알고리즘 접근 방식이 문제를 해결하기 위해 DFS(깊이 우선 탐색) + 정렬을 활용합니다.✏️ 주요 고려 사항✔ DFS를 사용하여 그래프를 탐색✔ 간선 정보를 저장할 때 내림차순으로 ..