2011-10-27から1日間の記事一覧

SRM522 Div2 Hard(900) CorrectMultiplicationTwo

CorrectMultiplicationTwo全部を1にすれば常に正しくなるので、答えは高々a+b+c-3。AとBの値を探索してA*Bがc+(a+b+c-3)より大きくなったら処理を打ち切るようにすれば、制限時間に間に合う。 #include <algorithm> using namespace std; class CorrectMultiplicationTw</algorithm>…

SRM522 Div2 Easy(250) PointErasingTwo

PointErasingTwo #include <vector> using namespace std; class PointErasingTwo{public: int getMaximum( vector <int> y ) { int n = (int)y.size(); int ans = 0; for ( int x1=0; x1</int></vector>

SRM522 Div1 Easy(250), Div2 Medium(550) RowAndCoins

RowAndCoinsどちらかの端がAならばAliceが勝てる。それ以外の場合はBobの勝ち。Aliceがどちらかの端を取るなら、Bobは他方の端1個を残せる。Aliceがどちらかの端を1個だけ残すならば、Bobはその1個を残せる。AliceがB…B○○○B…B、B…B○○○A…B、B…A○○○B……Bの形…

SRM522

不参加。