摘要:
UVA529 Addition Chains 题意翻译 题目描述 一个与 nn 有关的整数加成序列 <a_0,a_1,a_2,...,a_m><a0,a1,a2,...,am> 满足以下四个条件:1.a_0=11.a0=12.a_m=n2.am=n3.a_0<a_1<a_2<...<a_ 阅读全文
摘要:
POJ3076 Sudoku 本题为16*16宫格 剪枝见代码 1 #include <cstdio> 2 #include <iostream> 3 #include <algorithm> 4 #include <cstring> 5 using namespace std; 6 const i 阅读全文
摘要:
POJ1011 Sticks 剪枝好题,具体见代码: 1 #include <cstdio> 2 #include <algorithm> 3 #include <cstring> 4 #include <cctype> 5 #include <iostream> 6 using namespace 阅读全文
摘要:
POJ3074 Sudoku 与POJ2676相比,这一题搜索时每一步都找到最好确定的点进行枚举 对于每行、每列、每个九宫格,都分别用一个9位二进制数保存还有那些数还可以填 对于每个位置,将其所在行、列、九宫格所对应的二进制数进行或运算即可得到该位置能填哪些数,用lowbit运算(取出最低的为1的数 阅读全文
摘要:
POJ2676 Sudoku 需要算出第i行第j个所对应得九宫格的编号 据说可以直接算: 3*((i-1)/3)+(j-1)/3+1,蒟蒻不会,只好预处理 1 #include <cstdio> 2 #include <cstring> 3 #include <queue> 4 #include < 阅读全文
摘要:
2101 可达性统计 描述 给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量。N,M≤30000。 输入格式 第一行两个整数N,M,接下来M行每行两个整数x,y,表示从x到y的一条有向边。 输出格式 共N行,表示每个点能够到达的点的数量。 用f(x)表示从x出发能到达的点的集 阅读全文
摘要:
POJ1179 Polygon 题意:给出一个多边形,切断一条边,合并剩下的点(合并两个点之后将两个点上的数值按照边上的运算符(‘+’或‘*’)计算即为新的点的权值),求最后的点上得权值最大为多少 由于两个负数相乘可能得出很大的正数,所以只记录最大值是不够的,还应记录最小值 对于第一步删边的操作,我 阅读全文