cdoj 15 Kastenlauf dfs】的更多相关文章

Kastenlauf Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/3 Description Once every year, Jo and his friends want to visit the local fair in Erlangen, called Bergkirchweih. This year, they want to make a Kastenlau…
How Many Equations Can You Find Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 714    Accepted Submission(s): 467 Problem Description Now give you an string which only contains 0, 1 ,2 ,3 ,4 ,5…
N皇后问题 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.  你的任务是,对于给定的N,求出有多少种合法的放置方法.    Input 共有若干行,每行一个正整数N≤10,表示棋盘和皇后的数量:如果N=0,…
题意:给你一个序列,长度不超过52,每个元素不超过13.让你重新对这个序列排序,sum(i)表示i的前缀和,使得排序过后,对每个i,都有sum(i)%i==0. 深搜,加两个优化:①倒着从后向前搜:②枚举的时候不要枚举52个,而枚举值域(只有13),能快一点. 另外,一开始想的是相同的元素在最后一定都相邻,但是事实上试了试之后发现不行. #include<cstdio> #include<cstdlib> using namespace std; int path[60],a[60…
Description Starting with x and repeatedly multiplying by x, we can compute x31 with thirty multiplications: x2 = x × x, x3 = x2 × x, x4 = x3 × x, -, x31 = x30 × x. The operation of squaring can be appreciably shorten the sequence of multiplications.…
Description 一个1-n1−n的排列满足所有相邻数字奇偶性不同,那么称该排列为奇偶交错排列. 按字典序输出1-n1−n的所有奇偶交错排列. Input 输入一个整数n( 2 \le n \le 11)n(2≤n≤11) Output 输出若干行,每行一个排列.相邻数字之间以一个空格分隔,行末无空格. 请严格按照输出格式,输出不规范将直接判成Wrong answer Sample Input 1 4 Sample Output 1 1 2 3 4 1 4 3 2 2 1 4 3 2 3…
https://scut.online/p/31 还是不知道为什么RE了.的确非常玄学. 重构之后就没问题了.果然写的越复杂,分的情况越乱就越容易找不到bug. #include<bits/stdc++.h> using namespace std; typedef long long ll; int cnt[15]; int cnt2[15]; bool dfs(int x, int rest, bool dui) { if(rest == 0) return true; if(cnt2[x…
最开始我想的是全排列+枚举符号和括号的方法,但是我自己倒腾了很久还是打不对,只好向他人请教.正解很机智--直接随意将几个数"捆绑"在一起,值存在其中一个数上,其他数标记不可再选,直到只剩下一个数,再判断这个数是否为24. 1 #include<cstdio> 2 #include<cstdlib> 3 #include<cstring> 4 #include<algorithm> 5 #include<iostream> 6…
DFS模板 题型分类:我们可以将DFS题分为两大类: 1 . 地图型:这种题型将地图输入,要求完成一定的任务.因为地图的存在.使得题意清楚形象化,容易理清搜索思路.AOJ 869-迷宫(遍历地图,四向搜索)HDU 1035-Robot Motion(指定方向搜索,迷路(循环)判断)HDU 1045-Fire Net(check函数,回溯)HDU 1010-Tempter of the Bone(奇偶剪枝,回溯)2 . 数据型:这种题型没有给定地图,一般是一串数字或字母,要求按照一定的任务解题.相…
考虑每一条非树边都连接了祖先和儿子,类似于序列上的问题,从底往上算,当发现如果走到某个环的祖先,且这个环中还没有被选到,那么就将最浅的那条边贪心选择即可具体实现可以使用bitset维护当前子树的询问,如果这条边选了,那么bitset清空,否则和父亲合并 1 #include<bits/stdc++.h> 2 using namespace std; 3 #define N 2005 4 struct ji{ 5 int nex,to; 6 }edge[N<<1]; 7 bitset…