알고리즘
[백준 파이썬] # 2798 블랙잭
Bronze II # 2798 블랙잭 브루트 포스 링크 : https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 풀이 N, M = map(int, input().split()) cards = list(map(int, input().split())) sum_list = [] for i in range(N): for j in range(i+1, N): for k in range(j+1, N): if cards[i]+car..
[코드업 파이썬] # 3170 기억력 테스트 9
구조체 연습 # 3170 기억력 테스트 9 링크 : https://codeup.kr/problem.php?id=3170 기억력 테스트 9 첫째 줄에 $N$과 $M$이 입력된다.($1
[코드업 파이썬] # 3019 스케줄 정리
구조체 연습 # 3019 스케줄 정리 링크 : https://codeup.kr/problem.php?id=3019&rid=0 스케줄 정리 5 sleep 2014 05 23 golf 2014 06 02 travel 2015 11 22 baseball 2013 02 01 study 2014 05 23 codeup.kr 풀이 N = int(input()) li = [list(input().split()) for i in range(N)] li = sorted(li, key = lambda a : (int(a[1]), int(a[2]), int(a[3]), a[0])) for i in li: print(i[0]) lambda로 정렬할 때 데이터 형식(str 인지 int 인지)을 확인해야 한다 lambda 이후에..
[이코테 자료구조] 2. 그리디 알고리즘 & 구현
그리디 알고리즘 by 나동빈님 링크 : https://www.youtube.com/watch?v=2zjoKjt97vQ 그리디 알고리즘(탐욕법) : 현재 상황에서 지금 당장 좋은 것만 고르는 방법 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구 풀이의 정당성 분석이 중요 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지 검토 일반적인 상황에서 그리디 알고리즘은 최적의 해를 보장할 수 없을 때가 많다 많은 코딩 테스트에서 제시되는 문제 유형 중 하나 ※ 예시 문제 : [거스름 돈, 곱하기 혹은 더하기, 모험가 길드] 최적의 해를 빠르기 구하기 위해 가장 큰 화폐 단위부터 돈을 거슬러 주면 된다 가장 큰 화폐 단위부터 돈을 거슬러 주는 것이 최적..
[백준 파이썬] 소수 문제 유형 정복하기
파이썬 소수문제 정복하기 한 주간 알고리즘 스터디를 진행하면서 소수 문제를 다루었다. 소수가 사용되는 유형을 정리해두면 도움이 될 것 같아서 정리해보았다. 설명하기 쉬운 코드를 위해 유투브 영상을 일부 참고하였다. 성능 비교를 위해서 time을 측정하였고, input에는 동일하게 5를 넣어 비교해보았다. 소수 여부 판별 # chapter 1 # n이 소수인지 아닌지 판별_약수의 개수를 check 하여 판별 n = int(input()) check = 0 for i in range(1, n+1): # n+1 : n까지 포함하기 위해 ; range 범위의 특성 if n%i == 0: check += 1 if check == 2: print('소수') else: print('소수가 아닌 수') # 5 # 소수..