ACM-回溯
文章平均质量分 68
路小白_zZ
这个作者很懒,什么都没留下…
展开
-
uva 185(回溯)
题意:题解:#include #include #include #include #include using namespace std;const int N = 10;const int M = 200;string str;int fir, sec, thr, map[M], flag, m[M], num, ln, rn, sn, flag1;char l原创 2014-08-18 23:59:07 · 651 阅读 · 0 评论 -
uva 11210(回溯)
题意:题解:原创 2014-08-29 19:25:48 · 731 阅读 · 0 评论 -
uva 10001(回溯)
题意:题解:原创 2014-08-16 01:31:10 · 803 阅读 · 0 评论 -
hdu 1175(回溯)
题意:题解:原创 2014-08-29 18:38:58 · 817 阅读 · 0 评论 -
uva 193(回溯)
题意:题解:原创 2014-08-15 22:00:09 · 807 阅读 · 0 评论 -
uva 10160(回溯)
题意:题解:原创 2014-08-17 18:11:20 · 685 阅读 · 0 评论 -
uva 317(规律)
题意:题解:原创 2014-08-30 17:38:30 · 872 阅读 · 1 评论 -
uva 10624(dfs)
题意:题解:#include #include using namespace std;const int N = 100;int val[N], n, m, flag;int judge(int cur) { int k = 0; for (int i = 1; i <= cur; i++) { k = k * 10 + val[i]; k = k % cur;原创 2014-08-30 10:24:54 · 718 阅读 · 0 评论 -
uva 307(回溯)
题意:给出了一些被 题解:原创 2014-08-18 23:55:59 · 791 阅读 · 0 评论 -
uva 208(回溯)
题意:给出一个 题解:原创 2014-08-16 01:12:11 · 865 阅读 · 0 评论 -
uva 331(回溯)
题意:题解:#include const int N = 10;int n, s[N], ans;int judge() { for (int i = 0; i < n - 1; i++) if (s[i] > s[i + 1]) return 0; return 1;}void swap(int pos1, int pos2) { int temp; t原创 2014-08-13 23:57:30 · 776 阅读 · 0 评论 -
uva 519(回溯)
题意:先给出给出了题解:#include #include #include using namespace std;const int N = 50;char pi[N][5], pos[N][N][5];int row, col, flag, n, vis[N], fl, cav, jut;void init() { memset(vis, 0, sizeof(vi原创 2014-08-20 09:00:23 · 879 阅读 · 0 评论 -
uva 387(回溯)
题意:给出了一些b题解:#include #include const int N = 20;char g[N][5][5];int n, m[N][2], flag, vis[5][5], t, sum;void init() { flag = sum = 0; memset(vis, 0, sizeof(vis)); t++;}void dfs(int cur原创 2014-08-19 19:26:48 · 770 阅读 · 0 评论 -
uva 639(回溯)
题意:给出n 题解:原创 2014-08-13 00:56:33 · 724 阅读 · 0 评论 -
uva 110(回溯)
题意:题解:原创 2014-08-13 00:18:17 · 662 阅读 · 0 评论 -
uva 10012(暴力求解)
题意:题解:#include const int N = 10;int n, s[N], ans;int judge() { for (int i = 0; i < n - 1; i++) if (s[i] > s[i + 1]) return 0; return 1;}void swap(int pos1, int pos2) { int temp; t原创 2014-08-14 00:45:28 · 845 阅读 · 0 评论 -
uva 301(回溯)
题意:题解:#include const int N = 25;struct P { int sta, end, num;}p[N];int cap, m, n, maxx, count, now[N];void init() { for (int i = 0; i < N; i++) { p[i].sta = p[i].end = p[i].num = 0; n原创 2014-08-13 23:35:22 · 627 阅读 · 0 评论 -
uva 539(回溯)
题意:题解:#include #include const int N = 30;int g[N][N], vis[N][N], maxx, n;void init() { memset(g, 0, sizeof(g)); memset(vis, 0, sizeof(vis)); maxx = 0;}void find(int v, int count) { i原创 2014-08-13 23:34:34 · 816 阅读 · 0 评论 -
fzu 2107(回溯)
题意:如图题解:原创 2014-08-15 01:21:12 · 865 阅读 · 0 评论 -
uva 10317(回溯)
题意:给出一个等式但等式两边不一定相等,要求把这些数和运算符重新组合成一个成立的等式输出,如果不可以输出no solution。题解:将所有的数都一起移动到等号左边,然后统计需要加的数的个数plusnum,只有要加的数和要减的数之和是相等的才有解,那么所有数字的绝对值之和一定是偶数(因为x = x -> sum = 2x -> sum是偶数),然后就要回溯出相应的要加的数字都有哪些原创 2015-02-07 20:33:26 · 538 阅读 · 0 评论