読者です 読者をやめる 読者になる 読者になる

君はまるで砂漠に咲く、一輪の花。

僕はその花に引き寄せられる蝶。

Codeforces Round #201 (Div. 2)

はい。
http://codeforces.com/contest/347

A. Difference Row

ざっくりと大意

・(\(x_1\)-\(x_2\))+(\(x_2\)-\(x_3\))+...っていうので計算結果が最大になる並べ方で辞書順で並びが早いものを出力??

方針のようなもの

・総当りとかしてたら時間がいくらあっても足りないかと思ったけど、先頭にmaxと末尾にminを配置すれば中間はどんな並びでも計算結果は同じっぽい気がする。あんまりしっかり確認もしてないし証明も考えてないけど。。。。
・ということで計算結果が最大になるものは沢山あるけど辞書順ソートも忘れずに。

n=input()
x=map(int,raw_input().split())
b=x.index(max(x))
h=x.pop(b)
s=x.index(min(x))
t=x.pop(s)
x.sort()
print h,' '.join(map(str,x)),t

maxとmin位置を先に調べてからswapとかしてたせいでminの位置がずれたりして無駄WAした。。

B. Fixed Points

ざっくりと大意

・なぜかA問題よりAC多いらしいけどぱっと見よくわからないので後で