摘要: 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_ 阅读全文
posted @ 2019-02-13 23:12 孑行 阅读(570) 评论(0) 推荐(0) 编辑
摘要: POJ3076 Sudoku 本题为16*16宫格 剪枝见代码 1 #include <cstdio> 2 #include <iostream> 3 #include <algorithm> 4 #include <cstring> 5 using namespace std; 6 const i 阅读全文
posted @ 2019-02-13 18:38 孑行 阅读(506) 评论(0) 推荐(0) 编辑
摘要: POJ1011 Sticks 剪枝好题,具体见代码: 1 #include <cstdio> 2 #include <algorithm> 3 #include <cstring> 4 #include <cctype> 5 #include <iostream> 6 using namespace 阅读全文
posted @ 2019-02-13 12:25 孑行 阅读(105) 评论(0) 推荐(0) 编辑
摘要: POJ3074 Sudoku 与POJ2676相比,这一题搜索时每一步都找到最好确定的点进行枚举 对于每行、每列、每个九宫格,都分别用一个9位二进制数保存还有那些数还可以填 对于每个位置,将其所在行、列、九宫格所对应的二进制数进行或运算即可得到该位置能填哪些数,用lowbit运算(取出最低的为1的数 阅读全文
posted @ 2019-02-13 11:01 孑行 阅读(205) 评论(0) 推荐(0) 编辑
摘要: POJ2676 Sudoku 需要算出第i行第j个所对应得九宫格的编号 据说可以直接算: 3*((i-1)/3)+(j-1)/3+1,蒟蒻不会,只好预处理 1 #include <cstdio> 2 #include <cstring> 3 #include <queue> 4 #include < 阅读全文
posted @ 2019-02-13 09:43 孑行 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 2101 可达性统计 描述 给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量。N,M≤30000。 输入格式 第一行两个整数N,M,接下来M行每行两个整数x,y,表示从x到y的一条有向边。 输出格式 共N行,表示每个点能够到达的点的数量。 用f(x)表示从x出发能到达的点的集 阅读全文
posted @ 2019-02-13 08:10 孑行 阅读(269) 评论(0) 推荐(0) 编辑
摘要: POJ1179 Polygon 题意:给出一个多边形,切断一条边,合并剩下的点(合并两个点之后将两个点上的数值按照边上的运算符(‘+’或‘*’)计算即为新的点的权值),求最后的点上得权值最大为多少 由于两个负数相乘可能得出很大的正数,所以只记录最大值是不够的,还应记录最小值 对于第一步删边的操作,我 阅读全文
posted @ 2019-02-13 07:21 孑行 阅读(308) 评论(0) 推荐(0) 编辑