結果

問題 No.1537 私の代わりに仕事やっといてください。
ユーザー 👑 KazunKazun
提出日時 2021-06-06 18:53:24
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 380 ms / 2,000 ms
コード長 703 bytes
コンパイル時間 161 ms
コンパイル使用メモリ 82,132 KB
実行使用メモリ 149,404 KB
最終ジャッジ日時 2024-11-26 18:15:50
合計ジャッジ時間 1,744 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 9
権限があれば一括ダウンロードができます

ソースコード

diff #

def greedy():
    from itertools import permutations

    X=-1
    P=None
    for p in permutations(range(2,N+1)):
        M=A[1]*A[p[0]]+A[p[-1]]*A[1]
        for i in range(N-2):
            M+=A[p[i]]*A[p[i+1]]

        if M>X:
            X=M
            P=p
    return X,P

N=int(input())
A=["*"]+list(map(int,input().split()))

if N==2:
    exit(print(1,2,1))
elif N==3:
    exit(print(1,2,3,1))

AA=[(x,i) for i,x in enumerate(A[1:],1)]
AA.sort(key=lambda t:t[0])

L=[1]+list(range(2,N+1,2))
R=list(range(3,N+1,2))[::-1]
I=L+R
I_inv=[0]*(N+1)
for i in range(N):
    I_inv[I[i]]=i+1

V=[0]*(N+1)
for i in range(N):
    _,j=AA[i]
    V[I_inv[i+1]]=j

V=V[1:]
k=V.index(1)
V=V[k:]+V[:k]
print(*V,1)
0