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

 

10819번: 차이를 최대로

첫째 줄에 N (3 ≤ N ≤ 8)이 주어진다. 둘째 줄에는 배열 A에 들어있는 정수가 주어진다. 배열에 들어있는 정수는 -100보다 크거나 같고, 100보다 작거나 같다.

www.acmicpc.net

 

언어: 파이썬

난이도: 실버 2

코드

# 순열 사용을 위하 라이브러리
from itertools import permutations

n = int(input())
arr = list(map(int, input().split()))
# arr.sort()
# 모든 순열 구하기
per = list(permutations(arr, n))
max_val = 0

for i in range(len(per)): # 모든 순열 돌기
    cur = 0
    for j in range(0, n - 1):
        cur += abs(per[i][j] - per[i][j + 1])  # abc : 절대값 함수
        if cur > max_val:
            max_val = cur
print(max)

+ Recent posts