본문 바로가기

java157

[Leetcode]1079. Letter Tile Possibilities 문제 요약알고리즘 분류: 백트레킹, 카운난이도: Medium문제내용:n개의 타일이 있고, 각 타일에는 하나의 글자가 적혀있습니다이 타일들을 사용하여 만들 수 있는 모든 가능한 비어있지 않은 문자열 시퀀스의 개수를 반환해야 합니다.사이트 주소: https://leetcode.com/problems/letter-tile-possibilities/description/문제풀이 이번 문제는 백트레킹 문제이다. 백트레킹 관련 자세한 내용은 아래의 사이트에 참조하면된다.https://jih3508.tistory.com/84 [알고리즘 이론] 백트래킹(Backtracking)이론 이번에 볼 알고리즘은 백트래킹이다. 백트래킹을 알아두면 대부분 해를 찾는데 도움이 될것이다. 백트레킹은 탐색하는 도중 중복되거나 해를 찾.. 2025. 7. 18.
[BAEKJOON]24313 알고리즘 수업 - 점근적 표기 1 문제 요약알고리즘 분류: 구현, 큰 정수 다루기난이도: Sivel5문제내용:알고리즘의 소요 시간을 나타내는 O-표기법(빅-오)을 아래와 같이 정의한다. O(g(n)) = {f(n) | 모든 n ≥ n0에 대하여 f(n) ≤ c × g(n)인 양의 상수 c와 n0가 존재한다} f(n) = a1n + a0, 양의 정수 c, n0가 주어질 경우 O(n) 정의를 만족하는지 결과를 내라첫째 줄에 함수 f(n)을 나타내는 정수 a1, a0가 주어진다. (0 ≤ |ai| ≤ 100)다음 줄에 양의 정수 n0가 주어진다. (1 ≤ n0 ≤ 100)다음 줄에 양의 정수 c가 주어진다. (1 ≤ c ≤ 100)f(n), c, n0가 O(n) 정의를 만족하면 1, 아니면 0을 출력한다. 사이트 주소: https://www.. 2025. 7. 17.
[BAEKJOON]24266 알고리즘 수업 - 알고리즘의 수행 시간 5 문제 요약알고리즘 분류: 구현, 큰 정수 다루기난이도: Bronze3문제내용:수행 횟수와 수행 횟수를 다항식으로 나타내었을 때, 최고차항의 차수를 출력 해라사이트 주소: https://www.acmicpc.net/problem/24266문제풀이이 문제는 단순한 시간 복잡도 분석 문제입다.1. 시간 복잡도 분석문제에서 요구하는 것은 다음과 같다.:"코드1의 수행 횟수를 다항식으로 나타내었을 때, 최고차항의 차수를 출력한다. 단, 다항식으로 나타낼 수 없거나 최고차항의 차수가 3보다 크면 4를 출력한다."즉, O(n^a)에서 a가 몇인지만 알면 풀 수 있다.알고리즘을 분석해보면:3중 for문이 각각 n번씩 반복시간 복잡도: O(n³)최고차항의 차수: 32. 핵심 문제점문제의 핵심은 첫째 줄 출력입니다. n의.. 2025. 7. 4.
[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.
[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.