[백준/Python] 2798 블랙잭

2024. 10. 15. 22:33·백준[파이썬]
728x90
반응형
SMALL

https://www.acmicpc.net/problem/2798

 

제출코드

 

N, M = map(int,input().split())
N_list = list(map(int,input().split()))
total = []
for i in range(N):
    for j in range(i+1,N):
        for k in range(j+1,N):
            sum = N_list[i] + N_list[j] + N_list[k]
            if sum <= M:
                total.append(sum)
print(max(total))

 

코드 설명

N과 M을 map함수를 사용하여 int형식으로 입력받음

N_list에 카드에 쓰여있는 숫자들을 입력받기 위해 map함수와 list함수를 사용하여 int형식의 리스트로 입력받음

sum값을 하나하나 넣어줄 total 리스트 선언

0부터 N-1까지 i 순회하면서

i+1번째부터 N-1까지 j순회하면서

k+1번째부터 N-1까지 k순회하면서

sum값에 N_list의 [i] [j] [k]의 인덱스값을 저장

sum 값이 M보다 작거나 같으면 total리스트에 sum값을 append하여 저장

마지막에 total값 출력

 

느낀점

브루트 포스 알고리즘을 사용하여 풀었던것 같다. 사실 잘 안풀려서 브루트 포스 알고리즘을 찾는데 힘들었다.

블랙잭의 카드의 개수가 100개까지여서 빅오가 N**3이어서 완전탐색으로 풀었다.

i값을 0으로 고정시켜놓고 i+1부터 N-1까지 j값을 고정시켜놓고 j+1 부터 N-1까지 k값을 찾는다. 3중 for문으로 M값보다 작으면 total에 sum값을 append해줬다. 알고리즘 문제를 많이 풀어봐야겠다고 느꼈다.

728x90
반응형
LIST

'백준[파이썬]' 카테고리의 다른 글

[백준/Python] 1436 영화감독 숌  (1) 2024.10.17
[백준/Python] 14215 세 막대  (0) 2024.10.17
[백준/Python] 2941 크로아티아 알파벳  (0) 2024.10.17
[백준/Python] 3009 네 번째 점  (0) 2024.10.16
[백준/Python] 1000번: A+B  (0) 2024.08.16
'백준[파이썬]' 카테고리의 다른 글
  • [백준/Python] 14215 세 막대
  • [백준/Python] 2941 크로아티아 알파벳
  • [백준/Python] 3009 네 번째 점
  • [백준/Python] 1000번: A+B
코린이 파닥거리기
코린이 파닥거리기
    반응형
    250x250
  • 코린이 파닥거리기
    코린이 파닥거리기의 블로그
    코린이 파닥거리기
  • 전체
    오늘
    어제
    • 분류 전체보기 (128) N
      • 백준[파이썬] (56) N
      • Spring (31)
      • CS (1)
      • 자바 (4)
      • 백준[자바] (20)
      • 프로그래머스 (5)
      • 토이프로젝트 (1)
      • SWEA (2)
      • MSA (7) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    AOP
    spring
    프로그래머스
    SpringBoot
    스프링 클라우드
    파이썬
    SWEA
    MSA
    코딩테스트
    스프링
    JPA
    누적합
    재귀
    스프링부트
    테스트코드
    Java
    백준
    JWT
    자바
    스프링 부트와 AWS로 혼자 구현하는 웹 서비스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코린이 파닥거리기
[백준/Python] 2798 블랙잭
상단으로

티스토리툴바