2011-03-18から1日間の記事一覧

SRM416 div2 hard

十八番のメモ化再帰。 #include <algorithm> #include <cstring> #include <string> #include <vector> using namespace std; class DancingCouples { public: vector <string> can; int bn,gn; int cache[11][11][(1<<10)]; int rec(int b,int K,int left) { int &r=cache[b][K][left]; if(r!=-1) return</string></vector></string></cstring></algorithm>…

SRM403 div2 hard

丸写し上等! ・・・・・・・解けへんかった #include <algorithm> #include <utility> #include <vector> #define INF (1<<29) using namespace std; class TheSumOfLuckyNumbers { public: int DP[1000000+1]; bool isLucky(int n) { while(0<n) if(n%10!=4 && n%10!=7) return false; else n/=10; return true; } vector <int> sum(int n) { …</n)></vector></utility></algorithm>

SRM347 div2 hard

巡回セールスマン+ビットで全探索なんだけど "~mask"を"(1 #include <sstream> #include <string> #include <vector> using namespace std; class TaxiManager { public: int dist[50][50]; int DP[12][(1<<12)]; int cost[(1<<12)]; int schedule(vector<string> roads, vector<string> _customers) </string></string></vector></string></sstream>…