본문 바로가기

LeetCode57

[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.
[Leetcode]1471. The k Strongest Values in an Array 문제 요약알고리즘 분류: 정렬난이도: Medium문제내용:열에서 "강함(strength)"의 정의에 따라 K개의 가장 강한 값들을 찾는 문제입니다.값 arr[i]가 값 arr[j]보다 강하다는 것은 |arr[i] - m| > |arr[j] - m|일 때입니다.여기서 m은 배열의 중간값(median)입니다.만약 |arr[i] - m| == |arr[j] - m|라면, arr[i] > arr[j]일 때 arr[i]가 더 강합니다.강한 배열순으로 k개 만큼 반환하세요사이트 주소: https://leetcode.com/problems/the-k-strongest-values-in-an-array/description/문제풀이이번에는 단순정렬로 설명하고 담에 투포인트로 푸는 방법을 알려 줄것이다.✔ 강한 값의 정.. 2025. 7. 24.
[Leetcode]1079. Letter Tile Possibilities 문제 요약알고리즘 분류: 백트레킹, 카운난이도: Medium문제내용:n개의 타일이 있고, 각 타일에는 하나의 글자가 적혀있습니다이 타일들을 사용하여 만들 수 있는 모든 가능한 비어있지 않은 문자열 시퀀스의 개수를 반환해야 합니다.사이트 주소: https://leetcode.com/problems/letter-tile-possibilities/description/문제풀이 이번 문제는 백트레킹 문제이다. 백트레킹 관련 자세한 내용은 아래의 사이트에 참조하면된다.https://jih3508.tistory.com/84 [알고리즘 이론] 백트래킹(Backtracking)이론 이번에 볼 알고리즘은 백트래킹이다. 백트래킹을 알아두면 대부분 해를 찾는데 도움이 될것이다. 백트레킹은 탐색하는 도중 중복되거나 해를 찾.. 2025. 7. 18.
[Leetcode] 1760. Minimum Limit of Balls in a Bag 문제 요약알고리즘 분류: 이분탐색, 이진 탐색난이도: Medium문제내용:가방마다 공이 들어 있고, 우리는 특정 횟수만큼 가방을 나눌 수 있습니다.한 가방을 두 개로 나눌 때 각 가방에는 반드시 1개 이상 공이 있어야 한다.작업을 수행한 후 가능한 최소 패널티를 반환하세요.사이트 주소: https://leetcode.com/problems/minimum-limit-of-balls-in-a-bag/문제풀이 이번 문제에는 이분탐색을 활용한 문제이다. 관련 내용은 밑에 글에서 확인 해보면 된다.https://jih3508.tistory.com/288 [알고리즘 이론] 이진 탐색(Binary Search)이진 탐색(Binary Search) 완벽 정리 🔍안녕하세요! 오늘은 프로그래밍에서 가장 기본적이면서도.. 2025. 6. 13.
[Leetcode]2807. Insert Greatest Common Divisors in Linked List 문제 요약알고리즘 분류:Linked List, 유클리드호제법난이도: Medium문제내용:연결 리스트의 헤드 head가 주어지며, 각 노드는 정수 값을 포함하고 있습니다.인접한 모든 노드 쌍 사이에, 두 노드의 최대공약수와 같은 값을 가진 새로운 노드를 삽입하세요.사이트 주소: https://leetcode.com/problems/insert-greatest-common-divisors-in-linked-list/description/문제풀이 이번 문제는 링크드 리스트에 중간에 최대 공약수를 집어 넣는것이다. 최대 공약수 효율적으로 구하는 방법은 유클리드 호제법이다. 유클리드 호제법에 대한 설명은 아래 글에서 확인해보면된다.https://jih3508.tistory.com/13 유클리드 호제법(Euclid.. 2025. 5. 20.
[Leetcode]932. Beautiful Array 문제 요약알고리즘 분류: 분할정복난이도: Medium문제내용:nums는 [1, n] 범위의 정수들의 순열입니다.모든 0 정수 n이 주어졌을 때, 길이가 n인 임의의 아름다운 배열 nums를 반환하세요. 주어진 n에 대해 적어도 하나의 유효한 답이 존재합니다.사이트 주소: https://leetcode.com/problems/beautiful-array/description/문제풀이이 문제를 풀기 위한 핵심 통찰은 분할 정복(Divide and Conquer)을 활용하는 것입니다. 분할 정복에 대한 내용은 아래 글에서 확인 해보면 됩니다.https://jih3508.tistory.com/282 [알고리즘 이론] 분할 정복(Divide and Conquer)분할 정복(Divide and Conquer) 알고.. 2025. 5. 14.