2010-06-02から1日間の記事一覧

PKU 3009 Curling 2.0

深さ優先探索 幅優先探索と見せかけておいて、実は最大10手まで 4^10=2^20で通ってしまう const int dx[] = {0, 0, 1, -1}; const int dy[] = {1, -1, 0, 0}; int maze[32][32]; int w, h; int answer; bool in(int x, int y) { return 0 <= x && x < w && 0 …

PKU 3006 Dirichlet's Theorem on Arithmetic Progressions

素数 TLEがきついためおそらくエラトステネスの篩が必須 int main() { #define MAX (1024*1024) static bool flag[MAX]; memset(flag, -1, sizeof(flag)); flag[0] = flag[1] = false; for (int i = 2; i * i < MAX; ++i){ if (!flag[i]){ continue; } for (…