일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- api gateway 설계
- api gateway 필터
- ApplicationEvent
- argocd
- assertThat
- async/await
- AVG
- AWS
- aws autoscaling
- aws eks
- aws iam role
- AWS KMS
- Today
- Total
목록완전탐색 (5)
기록
- url : https://school.programmers.co.kr/learn/courses/30/lessons/42747H-Index는 과학자가 발표한 논문들 중, h번 이상 인용된 논문이 h편 이상일 때 가능한 h의 최댓값을 의미한다.예를 들어 [3, 0, 6, 1, 5]라는 인용 수가 주어졌을 때,3번 이상 인용된 논문은 3편이므로 조건을 만족하고, H-Index는 3이 된다.1. 완전탐색 풀이모든 가능한 h에 대해 조건을 검사한다.각 h마다 h 이상 인용된 논문 수(ucnt), h 이하 인용된 논문 수(dcnt)를 계산하고,ucnt ≥ h and dcnt ≤ h를 만족하는 h 중 최댓값을 반환한다.def solution(citations): citations.sort(reverse=Tr..
- url : https://school.programmers.co.kr/learn/courses/30/lessons/42842?language=python3 Leo는 갈색 테두리와 노란색 내부로 이루어진 카펫을 보았다.갈색 격자 수 brown과 노란색 격자 수 yellow가 주어졌을 때, 전체 카펫의 가로와 세로 크기를 구하는 문제이다.조건 정리전체 격자 수 = brown + yellow내부는 (가로 - 2) * (세로 - 2) = yellow테두리는 2a + 2b + 4 = brown을 만족해야 한다.이때 a, b는 내부 사각형의 가로와 세로이다.즉, 아래 두 조건을 만족하는 a, b를 찾으면 된다.a + b = (brown - 4) // 2a * b = yellow전체 가로, 세로는 a + 2, ..
프로그래머스 ‘소수 찾기’ 문제는 주어진 숫자 문자열로 만들 수 있는 모든 수를 조합해, 그중 소수의 개수를 구하는 완전탐색 문제다.처음에는 하나하나 소수 판별을 직접 하는 방식으로 해결할 수 있지만, 더 효율적인 방법은 ‘에라토스테네스의 체’를 활용해 소수 정보를 미리 계산해두는 것이다. url : https://school.programmers.co.kr/learn/courses/30/lessons/42839?language=python31. 문제 핵심문자열 numbers로 만들 수 있는 모든 숫자 조합을 생성중복 없이 set에 담고, 그중 소수만 카운팅isPrime()을 수십 번 호출하지 않고, 소수 배열을 미리 캐싱하는 방식으로 개선2. 에라토스테네스의 체def make_sieve(limit): ..
문제 설명url : https://school.programmers.co.kr/learn/courses/30/lessons/42840?language=python31번부터 N번까지 총 answers 배열만큼 문제가 주어진다.세 명의 수포자가 각자 고정된 패턴으로 문제를 찍고 있으며, 정답과 비교했을 때 가장 많은 문제를 맞힌 수포자의 번호를 오름차순으로 리턴해야 한다.수포자의 답안 패턴1번1, 2, 3, 4, 5 반복2번2, 1, 2, 3, 2, 4, 2, 5 반복3번3, 3, 1, 1, 2, 2, 4, 4, 5, 5 반복해결 전략모든 수포자에 대해, answers 리스트를 순회하며 정답을 한 문제씩 비교해본다.수포자의 패턴은 주기적으로 반복되므로, **i % len(패턴)**을 통해 현재 수포자가 찍은..
문제 설명url : https://school.programmers.co.kr/learn/courses/30/lessons/86491회사는 명함을 수납할 수 있는 지갑을 만들려고 한다. 모든 명함을 돌리거나 눕힐 수 있다는 전제하에, 모든 명함을 한 지갑 안에 넣을 수 있도록 가장 작은 지갑의 크기를 구해야 한다.예를 들어 다음과 같은 명함 정보가 있다고 하자: 명함 번호가로세로16050230703603048040 이 명함들을 적절히 눕혀 넣으면, 80(가로) x 50(세로)의 지갑으로 모두 수납할 수 있고, 이는 최소 크기인 4000이 된다.핵심 아이디어모든 명함은 회전이 가능하므로, 각 명함의 긴 변을 가로로, 짧은 변을 세로로 본다고 해도 무방하다. 즉, 모든 명함의 [가로, 세로]를 sorted(..