2011-04-26から1日間の記事一覧

SRM504 Div2 Easy(250) ComparerInator

ComparerInator #include <vector> using namespace std; int p1( int a, int b ) { return a; } // a int p2( int a, int b ) { return b; } // b int p3( int a, int b ) { return a<b?a:b; } // a<b?a:b int p4( int a, int b ) { return a<b?b:a; } // a<b?b:a bool check( vector<int> A, vector<int> B, vector<int> …</int></int></b?a:b;></vector>

SRM504 Div1 Medium(500) AlgridTwo

AlgridTwo次の行に移った時、前の行は出力と同じになっているはずなので、行ごとに何通りの入力があるかを求めて掛け合わせればよい。 行ごとのありうる入力の個数は動的計画法で求める。あるマスの1つ前まで処理を行って、そのマスが白や黒になった場合に…

SRM504 Div1 Easy(250), Div2 Medium(500) MathContest

MathContest取り出す度に残りのボールの色や向きを反転せずに、これまでに取り出したボールの個数の偶奇で、取り出す位置を変えたりボールの色を反転するようにすればO(n)になる。 #include <string> using namespace std; class MathContest{public: int countBlack</string>…

SRM504

トラブルのためレーティング無し。500が解けなかったので助かった。