2011年6月27日月曜日

TopCoder SRM194 Div2 250Pts

今日のTopCoderの問題はこちらで見ることができる(要TopCoder登録 & 問題文は英語)。

問題を簡単に和訳する。

サッカーのリーグ戦では、勝つと3、引分けだと1、負けだと0の勝ち点が得られる。勝利数と引分数の配列wins[]、ties[]が与えられたときに、全チームの勝ち点の最大値を返すメソッドを作成せよ。ただし、2つの配列におけるi番目の要素は、チームiの結果を表すものとする。

私の解答はこちら。

public class Soccer {
 public int maxPoints(int[] wins, int[] ties) {
  int maxP = 0;
  for( int i=0 ; i<wins.length ; i++){
   int tmpP = wins[i]*3 + ties[i];
   if( tmpP > maxP ) maxP = tmpP;
  }
  return maxP;
 }
}

得点は248.74/250と過去最高の点数を記録。特にひねる必要もなく、素直に書けた。正解率は99.45%。平均点も高く、易問のようだ。

0 件のコメント:

コメントを投稿

フォロワー

ブログ アーカイブ

ページビューの合計