2010-07-18から1日間の記事一覧

SRM476 Div2 Easy(300) MatrixShiftings

MatrixShiftings #include <string> #include <vector> using namespace std; class MatrixShiftings { public: int minimumShifts( vector <string> matrix, int value ); }; int MatrixShiftings::minimumShifts( vector <string> matrix, int value ) { int N = (int)matrix.size(); int M</string></string></vector></string>…

SRM476 Div1 Medium(550) FriendTour

FriendTourManglisiの全員を辿るのではなく、Manaoの友人をのみを辿る。friends[0]の長さが36文字以内なのでMasaoの友人は高々15人。探索の結果をメモしておけば全探索が間に合う。d本のエッジを持つノードでそれぞれのエッジに進んだときに完遂する確率が分…

SRM476 Div2 Hard(1000) SubAnagrams

SubAnagramsn=|X|として、O(n3)ならば間に合う。動的計画法。numi,jをX[0..j]からX[i..j]を切り出したときのX[0..j]の最大分割数、tをX[t..i-1]がX[i..j]の部分グラフとなる最小のtとすると、numi,j = mint≦k≦i-1(numk,i-1+1)。 #include <string> #include <vector> #includ</vector></string>…