Hatena::Grouptopcoder

kojingharangの日記 RSSフィード

 | 

2011-03-08

SRM 499 Div2 250 -> 217

03:08 | SRM 499 Div2 250 -> 217 - kojingharangの日記 を含むブックマーク はてなブックマーク - SRM 499 Div2 250 -> 217 - kojingharangの日記 SRM 499 Div2 250 -> 217 - kojingharangの日記 のブックマークコメント

  • ヒントから任意の2つを選ぶ。
  • その2つ(a, b)は X+Y と X-Y に対応しているかもしれないので X=(a+b)/2, Y=(a-b)/2 を求める。整数にならないとだめ。
  • X*Y の最大値を返す。
  • なんかテンパッたらしくとりあえず最初にソートしました。。全然意味ないですね。。。
class SimpleGuess {
	public:
	int getMaximum(vector <int> hints) {
		sort(hints.B, hints.E);
		cout<<hints<<endl;
		int xy = 0;
		REP(i, hints.SZ)
		REP(j, hints.SZ)
		{
			if(i==j) continue;
			int x = hints[i] + hints[j];
			int y = hints[i] - hints[j];
			if(x&1) continue;
			if(y&1) continue;
			if(xy<x*y) xy=x*y;
		}
		return xy/4;
	}
 |