BOJ:最大差異[10819]

3885 ワード

1.質問


N個の整数からなる配列Aが与えられる.この場合、配列中の整数の順序を適切に変更し、次の式の最値を求めるプログラムを作成してください.
|A[0] - A[1]| + |A[1] - A[2]| + ... + |A[N-2] - A[N-1]|
ソース:https://www.acmicpc.net/problem/10819

2.アイデア

  • mine
  • アレイの数は、すべてのアレイの数に比べて
  • である.
  • 各アレイの和を求め、最低価格出力
  • 3.コード


    mine
    import sys
    from itertools import permutations
    
    in = lambda : sys.stdin.readline().strip()
    result = 0
    n = int(input())
    a = list(map(int, input().split()))
    p = list(permutations(a,n))
    
    for i in p:
        sum = 0
        l = list(i)
        for j in rnage(1,n):
            s += abs(l[j]-l[j-1])
        result = max(result,sum)
    
    print(result)
    컴파일 에러 : 다시 풀 것!