본문 바로가기

자바스크립트17

[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.
[BAEKJOON]2903 중앙 이동 알고리즘 문제 요약알고리즘 분류: 집합난이도: Bronze3문제내용:다음의 두 가지 규칙을 따릅니다:각 변의 중앙에 점을 하나 추가각 정사각형의 중심에 점을 하나 추가N번 거친 후 점의 수를 출력해라사이트: https://www.acmicpc.net/problem/2903문제풀이이 문제는 특정 패턴에 따라 그리드를 그릴 때 생성되는 점의 개수를 계산하는 알고리즘 문제입니다. 문제에서 보여주는 이미지를 통해 패턴을 이해할 수 있습니다.패턴 분석문제에서 주어진 패턴을 분석해보면:N=1일 때, 2×2 사각형에 점 4개가 있습니다.N=2일 때, 3×3 사각형에 점 9개가 있습니다.N=3일 때, 5×5 사각형에 점 25개가 있습니다.N=4일 떼, 9×9 사각형에 점 81개가 있습니다.알고리즘은 다음과 같이 정의됩니다:정사.. 2025. 5. 15.
[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.
[BAEKJOON]7785 회사에 있는 사람 문제 요약알고리즘 분류: 집합난이도: Silver5문제내용:사람 이름하고 "enter"나 "leave"가 주어진다. "enter"인 경우는 출근, "leave"인 경우는 퇴근이다. 출근 한 사람 역순으로 출력해라사이트: https://www.acmicpc.net/problem/7785 문제풀이 이번 문제는 간단한 집합문제이다. 각 언어마다 Set이라는 자료 구조만 활용 잘하면 된다. Set에 대한 기본 설명 하면 아래와 같다. O(1) 시간에 추가/삭제 가능자동으로 중복 제거빠른 검색 가능 구현은 아래와 같이 하면 된다.enter 기록은 Set에 추가leave 기록은 Set에서 제거마지막에 Set의 내용을 역순 정렬하여 출력마무리 위와 같이 구현 하면 시간 복잡도는 정렬 때문에 O(NlogN) 만큼 나.. 2025. 5. 12.
[BAEKJOON]13241 최소공배수 문제 요약알고리즘 분류: 유클리드호제법난이도: Silver5문제내용:최대 공배수를 구야여사이트: https://www.acmicpc.net/problem/13241문제풀이 이번 문제는 최대 공배수이다. 여러 가지 푸는 방법이 있지만 최적화로는 유클리드 호제법이라 최적의 방식이 있다 아래 글보고 바로 따라하면 푸는 데는 지장이 없다. 코드 설명은 아래 글만 봐도 이해하는데는 문제가 없다고 생각한다.https://jih3508.tistory.com/13 유클리드 호제법(Euclidean algorithm)이론1. 유클리드 호제법이란?두 개의 정수 혹은 다수의 자연수에서 최대공약수를 구하는 알고리즘이다. 원리는 두 수가 서로 나눠서 나머지를 구한다. 만약 나머지가 0이면 그 수가 최대 공약수jih3508.ti.. 2025. 5. 8.
[Leetcode] 3016. Minimum Number of Pushes to Type Word II 문제 요약알고리즘 분류: 그리디, , 정렬, Counting 난이도: Medium문제내용:각 키(2~9)는 서로 다른 알파벳 집합에 매핑될 수 있습니다.키는 어떤 개수의 문자로든 재매핑할 수 있습니다.각 알파벳은 정확히 하나의 키에만 매핑되어야 합니다.키에 매핑된 n번째 문자를 입력하려면 키를 n번 눌러야 합니다.예: 키 '2'에 ['a','b','c']가 매핑되면, 'a'는 1번, 'b'는 2번, 'c'는 3번 눌러야 합니다.주어진 단어 word를 입력하기 위한 최소 키 누름 횟수를 반환하세요.사이트 주소: https://leetcode.com/problems/minimum-number-of-pushes-to-type-word-ii/description/문제풀이이번 문제에서는 완전탐색으로 풀수 있지만.. 2025. 5. 6.