본문 바로가기
728x90

전체 글286

[Leetcode]49. Group Anagrams 1. 문제문제: 49. Group Anagrams — https://leetcode.com/problems/group-anagrams/요약: 문자열 목록을 받아서, 쓰인 글자와 그 개수가 똑같고 순서만 다른 문자열끼리 묶어 돌려준다. 묶음의 순서와 묶음 안의 순서는 자유다.난이도: Medium유형: 해시 테이블 문자열 정렬입력 규모: 문자열 개수는 최대 10^4, 각 문자열 길이는 최대 100 수준이다. 영어 소문자만 나오고, 빈 문자열도 들어올 수 있다.직접 만든 예시:strs = ["listen", "silent", "enlist", "google", "gogole", "cat"]→ [["listen", "silent", "enlist"], ["google", "gogole"], ["cat"]] .. 2026. 9. 22.
[BAEKJOON] 14626 ISBN 📌 백준 2277번 - ISBN Bronze I · 브루트포스 / 구현 / 문자열 📋 문제 설명 🔍 문제 요약 13자리 ISBN에서 훼손된 한 자리가 *로 표시되어 있다. *에 들어갈 올바른 숫자(0~9)를 찾아 출력하시오. ISBN-13은 국제 표준 도서 번호로, 13자리 숫자로 구성됩니다. 마지막 자리는 체크기호로, 아래 공식을 만족해야 유효한 ISBN입니다. ISBN이 abcdefghijklm 일 때, a + 3b + c + 3d + e + 3f + g + 3h + i + 3j + k + 3l + m ≡ 0 (mod 10) 즉, 홀수 자리(1,3,5...) × 1, 짝수 자리(2,4,6...) × 3 을 모두 더한 값이 10의 배.. 2026. 2. 26.
[BAEKJOON] 4134 다음 소수 📌 백준 13588번 - 다음 소수 (Next Prime) Silver IV · 브루트포스 / 소수 판별 📋 문제 설명 🔍 문제 요약 정수 n (0 ≤ n ≤ 4×10⁹)이 주어졌을 때, n보다 크거나 같은 소수 중 가장 작은 소수를 출력하시오. 테스트 케이스 수 T가 첫 줄에 주어지고, 각 케이스마다 n이 한 줄씩 주어진다. n이 소수라면 n 그 자체가 정답, 아니라면 n+1부터 탐색해 나가면 된다. 💡 풀이 핵심 포인트 🤔 처음 접근 - 어떻게 소수를 판별할까? 가장 직관적인 방법은 2부터 N-1까지 모두 나눠보는 것인데, N이 최대 4×10⁹이라 이걸 그대로 쓰면 시간 초과가 난다. 소수 판별에서 핵심 수학적 사실이 있다. N.. 2026. 2. 25.
[BAEKJOON]2485 가로수 문제 요약알고리즘 분류: 유클리드 호제법난이도: Silver3문제내용:가로수가 일정하지 않은 간격으로 심어져 있을 때 모든 가로수가 같은 간격이 되도록 새로운 가로수를 최소한 몇개 심어야 하는지 출력 해라사이트: https://www.acmicpc.net/problem/2485문제 이해가로수가 일정하지 않은 간격으로 심어져 있을 때, 모든 가로수가 같은 간격이 되도록 새로운 가로수를 최소한으로 심는 문제입니다.핵심 아이디어모든 가로수들 사이의 간격이 동일해야 함기존 가로수는 그대로 두고 새로운 가로수만 추가추가할 가로수의 개수를 최소화접근 방법간격 계산: 연속된 가로수들 사이의 거리를 모두 계산최대공약수 구하기: 모든 간격들의 최대공약수가 최소 간격이 됨필요한 가로수 계산: (총 거리 / 최소 간격) -.. 2025. 8. 1.
[Leetcode]2894. Divisible and Non-divisible Sums Difference 문제 요약알고리즘 분류: 구현난이도: Easy문제내용:num1: 범위 [1, n] (양 끝값 포함)에 있는 모든 정수 중에서 m으로 나누어떨어지지 않는 수들의 합num2: 범위 [1, n] (양 끝값 포함)에 있는 모든 정수 중에서 m으로 나누어떨어지는 수들의 합정수 num1 - num2를 반환하시오.사이트 주소: https://leetcode.com/problems/divisible-and-non-divisible-sums-difference/description/문제풀이 이번 문제는 1부터 N까지 계산하는것인데 구현은 단순하다. 구현은 아래와 같이 하면 된다.기본 접근법: 1부터 n까지 반복하며 각 수가 m의 배수인지 확인m의 배수가 아니면 결과에 더하기 (num1에 해당)m의 배수이면 결과에서 빼기.. 2025. 7. 31.
[BAEKJOON] 2075 N번째 큰 수 문제 요약알고리즘 분류: 힙난이도: Silver4문제내용:N개의 줄에는 각 줄마다 N개의 수가 주어진다.N번째 큰 수를 출력해라.사이트 주소: https://www.acmicpc.net/problem/2075 문제풀이🤔 첫 번째 접근법의 한계가장 직관적인 방법은 모든 수를 배열에 저장한 후 정렬하는 것입니다.// 직관적이지만 비효율적인 방법int[] numbers = new int[N * N]; // N²개의 공간 필요// 모든 수를 저장 후 정렬Arrays.sort(numbers);return numbers[N * N - N]; // N번째로 큰 수 문제점:메모리: N²개의 수를 모두 저장해야 함 (N=1,500일 때 225만 개)시간: O(N² log N)의 정렬 시간 필요 이번 문제에서는 메모.. 2025. 7. 29.
728x90