티스토리 뷰
안녕하세요!
백준 2798번 블랙잭 문제입니다!
블랙잭 문제는 브루트 포스 알고리즘을 사용하는 문제입니다.
브루트 포스(brute force) 알고리즘은 완전 탐색 알고리즘이라고도 합니다.
모든 경우의 수를 확인하여 적합한 결과를 출력해내는 알고리즘입니다.
브루트 포스의 가장 기본적인 탐색 방법은 해가 존재하는 모든 경우를 전체 탐색하는 것입니다.
전체적으로 탐색하는 순차 탐색, 비선형 구조를 전체적으로 탐색하는 깊이 우선 탐색(Depth First Search)과
너비 우선 탐색(breadth first search)이라는 도구들이 있습니다!
참고 : https://namu.wiki/w/%EB% B8% 8C% EB% A3% A8% ED% 8A% B8%20% ED% 8F% AC% EC% 8A% A4
블랙잭 문제는 첫째 입력 줄에 제시되는 카드의 개수(N)와 블랙잭 룰 상 넘어서는 안 되는 수(M)가 입력됩니다.
둘째 입력 줄에는 카드의 개수만큼 숫자들을 입력합니다.
그 후,
제시된 카드 중 3개의 숫자를 합쳐 M을 넘지 않는 최대의 수를 출력하는 문제입니다.
저는 모든 경우를 다중 for 반복문을 사용하여 문제를 풀었습니다!
처음 아이디어는
while반복문으로 계산이 끝난 수들을 제거하는 방향으로 진행했었는데
코드도 길어지고 복잡해져서 고민 끝에 for 반복문을 3번 사용하여 문제를 해결하였습니다!
for 반복문, while 반복문에 대한 개념을 정확하게 알고 계시면 해결하기 어렵지 않으실 것 같습니다!
이상 2798번 블랙잭 문제였습니다!
더 좋은 아이디어나 수정할 부분 댓글로 남겨주세요
'PYTHON' 카테고리의 다른 글
[BAEKJOON/PYTHON] 10989번 : 수 정렬하기 3 (0) | 2020.07.14 |
---|---|
[BAEKJOON/PYTHON] 1427번 : 소트 인사이드 (0) | 2020.07.13 |
[BAEKJOON/PYTHON] 1193번 : 분수찾기 (0) | 2020.02.04 |
[BAEKJOON/PYTHON] 2292번 : 벌집 (0) | 2020.02.04 |
[BAEKJOON/PYTHON] 1712번 : 손익분기점 (0) | 2020.02.01 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- React.memo
- Vue
- TypeScript
- Vue.js
- programmers
- Preloading
- 상호평가
- python
- Repository Pattern
- React
- redux-thunk
- 백준
- Transpiler
- reactrouter
- error
- Vuex
- redux
- SPA
- clean code
- 프로그래머스
- 알고리즘
- 문제풀이
- AxiosInterceptor
- SOAP API
- 파이썬
- webpack
- js
- GraphQL
- bundler
- v-for
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함