본문 바로가기

코딩테스트/백준

[Python] 2798번 블랙 잭

Brute force(브루드포스)란 ?

 

Brute: 무식한, force: 힘.

가능한 모든 경우의 수를 모두 탐색하면서 요구조건에 충족되는 결과를 얻어내는 알고리즘입니다.

완전탐색 알고리즘이라고도 하며 효율은 낮을 수 있으나 원하는 결과를 무조건 확보할 수 있습니다.

순차 탐색,  깊이 우선 탐색(DFS, Depth First Search)과 너비 우선 탐색(BFS, breadth first search) 등이 존재합니다.

 

import sys

max = 0
answer = []
n, m = map(int, sys.stdin.readline().split())
answer = list(map(int, sys.stdin.readline().split()))

for i in range(0, n-2) :
  for j in range(i+1, n-1) :
    for k in range(j+1, n) :
      if answer[i] + answer[j] + answer[k] > m :
        continue
      elif ((answer[i] + answer[j] + answer[k]) > max) :
        max = answer[i] + answer[j] + answer[k]

print(max)

 

 

'코딩테스트 > 백준' 카테고리의 다른 글

[JAVA] 2579번 계단 오르기  (0) 2023.08.22
[JAVA] 10845번 큐  (0) 2023.08.04
[JAVA] 1018번 체스판 다시 칠하기  (0) 2023.07.18
[JAVA] 1934번 최소공배수  (0) 2023.06.30
[JAVA] 2908번 상수  (0) 2023.02.12