728x90 반응형 알고리즘 문제풀이26 백준 2798 첫 번째 시도한 코드(실패) import sys n, m = map(int, sys.stdin.readline().split()) c = list(map(int, sys.stdin.readline().split())) result = [] result2 = [] for i in range(n - 2): for j in range(i + 1, n - 1): for k in range(j + 1, n): result.append(sum([c[i], c[j], c[k]])) x = len(result) for i in range(x): result2.append(abs(m - result[i])) index = result2.index(min(result2)) print(result[index]) 반례 예를 .. 2023. 3. 31. 백준 10819 import sys def back_tracking(x): # x가 n개라면 => x == len(temp) # 조건에 맞게 수를 더해준다. if x == n: answer.append(sum(abs(m[temp[i + 1]] - m[temp[i]]) for i in range(n - 1))) return # 반복문을 통해 idx를 temp에 저장 for i in range(n): if i not in temp: temp.append(i) back_tracking(x + 1) # 백 트래킹 temp.pop() n = int(sys.stdin.readline()) m = list(map(int, sys.stdin.readline().split())) answer = [] temp = [] back_trac.. 2023. 3. 31. 이전 1 2 3 4 5 다음 728x90 반응형