알고리즘/brute force 3

백준 7568 파이썬(brute force)

ㅂㄷㅂㄷ... ㅂㄷㅂㄷ... ㅂㄷㅂㄷ... 이 문제 푸느라 1시간정도 날린것같다... 삽질을 아주 정성스럽게 열심히 했다...ㅠ.ㅠ 어느정도 삽질을 하다가 생각이라는 것을 좀 했어야 했는데 아무생각없이 삽질만 열심히 해버렸다. 다음부터는 더 생각하면서 문제에 접근해야겠다는 교훈을.. # 7568 덩치 n = int(input()) people = [] for i in range(n): people.append(tuple(map(int,input().split()))) # 각 사람별 딕셔너리를 만들어줌. dictpeople = {} for v in people: dictpeople[v] = 1 people.sort(reverse=True) # 몸무게로 내림차순 정렬 rank = 1 for i in rang..

백준 2231 파이썬(brute force)

# 2231 분해합 n = int(input()) cons_num = {} for i in range(1,n+1): num = list(map(int,list(str(i)))) num.append(i) cons_num[sum(num)] = [] for i in range(1,n+1): num = list(map(int,list(str(i)))) num.append(i) cons_num[sum(num)].append(i) if n not in cons_num.keys(): print(0) else: print(cons_num[n][0]) 생성자를 역으로 도출하는 방법이 도저히 생각이 안나서 임의의 숫자가 주어지면 그 숫자까지의 생성자를 모두 생성해낸 다음에 딕셔너리와 리스트를 이용해서 답을 구했다. bru..

백준 2798 파이썬(brute force)

brute force란? 암호해독에서 사용되는 방법으로 무차별적으로 넣을 수 있는 숫자는 다 시도해보면서 해독하는 방법이다. 시간과 조건만 된다면 가장 단순하면서도 언젠가는 무조건 풀 수 있는 방법이다. 2798번 내 코드 # 2798 블랙잭 n,m = map(int,input().split()) dack = list(map(int,input().split())) target = m for i in range(len(dack)-2): for j in range(i+1,len(dack)-1): for k in range(j+1,len(dack)): sum = dack[i]+dack[j]+dack[k] if sum > m: continue elif target >= m-sum: target = m-sum a..