개발공부/문제풀이

백준 10974 모든 순열 파이썬(python)

tigre 2022. 3. 13. 16:41
728x90
반응형

 

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

 

10974번: 모든 순열

N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

파이썬 내장 라이브러리를 사용하면 쉽게 구할 수 있다.

 

나의 코드

#|A[0] - A[1]| + |A[1] - A[2]| + ... + |A[N-2] - A[N-1]|
from itertools import permutations

n = int(input())
array = list(map(int,input().split()))

arr_per = permutations(array)   #모든경우의수(수열)을 만들어준다

cnt = []
for arr in arr_per:
    sum = 0
    for i in range(n-1):
        sum += abs(arr[i]-arr[i+1])     #수열들에서 주어진식을 쓴 변수를 cnt배열에 넣어준다
        cnt.append(sum)

# print(cnt)
print(max(cnt)) #주어신식을 배열에 넣은것중 제일 큰 값을 출력한다.
728x90
반응형