문제 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 알고리즘 부르트 포스 (완전탐색 알고리즘) 설명 바로가기 1. 난쟁이 키를 입력받는다. 2. 9명의 난쟁이들의 키 합을 구한다. 3. 가짜 난쟁이 2명의 키 = 9명의 난쟁이 키 - 100 4. 2중 for문을 이용하여 가짜 난쟁이를 찾으면 된다. a. 첫 번째 for문 : 0번째 부터, 8번째까지 (총 9명)의 난쟁이를 탐색 - 두 번째 for문에서 i+1 을 탐색할텐데, 만약 i = 9이라면, j = 10 -> 배열[10] -> Index error가 발생합니다..
부르트 포스 (Brute Force) - 모든 경우의 수를 파악해야할 때 사용한다. [완전 탐색] - 경우의 수를 만들기 위한 방법을 작성해야한다. (순열, 재귀, 비트마스크 등) 알고리즘 1. 부르트 포스 문제가 맞는지 확인한다. a. 문제가 모든 경우의 수를 파악해야하는 경우 b. 입력되는 데이터의 범위가 작고, 시간 제한이 꽤 긴 편이다. - [1초 당 연산 횟수] O(N) = 1억 O(NlogN) = 500만 O(N^2) = 1만 O(N!) = 11 2. 어떤식으로 경우의 수를 만들지 결정하기 (순열, 재귀, 비트마스크 등) a. 단순한 문제 => 반복문 사용 b. 사전성(순서) 확인 => 순열 사용 c. 가지치기를 하는 경우 => 재귀 - 중간에 답이 아닌 것이 확실해지는 것이 한 무더기 생기는..
- Total
- Today
- Yesterday
- ord
- 프로그래머스
- Code up
- 정답
- 깃허브
- COMMIT
- 코드업
- 백준
- do while
- SwiftUI
- 코드 업
- baekjoon
- for문
- level1
- Swift
- CHR
- 레플릿
- 시간초과
- 리플릿
- CodeUp
- 이것이 코딩테스트다
- 반복문
- replit
- 깃
- 16진수 입력
- python
- 설명
- 부르트포스
- 파이썬
- 기초 100제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |