きままにものづくり

日々の気付いたことなんかを書いてます。

SRM573Div1Easy

問題

サイズNの配列が与えられる。Nは3の倍数である。プログラミングコンテストを考える。各要素はプログラマの実力を示し、はじめの3要素X,Y,Zが自身のチームメンバーである。チームの能力はmax(X,Y,Z)+min(X,Y,Z)で求まる。この能力より真に大きいチームは、自身のチームより高い順位となる。
この時の自身のチームの最悪の順位を求めよ。

解法

能力順にソートし、大きい要素と小さい要素で能力を比較することで答えが求まる。

計算量

O(N log N) (ソート)
 O(N) (探索処理)

コード