题目链接 题目大意 在一个树阵中按一定走法取一些树,使和最大且被 k+1整除 解题思路 类似一个数塔问题 因为最后的结果要被 k+1 整除,所以可以记录到每一个点  对 k+1 取余结果不同的最优解(最大值),不用记录每一个数,浪费空间和时间 举个例子: 当到达 (i, j) 这个点时,有两种路线得到的值分别为a, b(a>b),且a % (k+1) = x, b % (k+1) = x,那么此时只需记录a,将b舍去 因为余数相同不会对后面的结果产生影响 最后枚举最后一行对 k+1取余结果为0的…
题目链接 : 1. 洛谷 2.topoi . 大致题意:输入一个数s,找出所有约数和为s的数 关于一个数的约数和求法: 一个>1的整数可以被分解为多个 质数 的乘方,设数 s = p1k1 * p2k2 * p3k3  *......*pnkn 根据 组合 的思想  s的约数和 = (p10 +p11+p12+......+p1k1)*(p20 +p21+p22+......+p2k2)*........*(pn0 +pn1+pn2+......+pnkn); 数据很大,有多组测试数据,首先想到…
Topoi(一个经常会炸的网站) 本题提交链接 很久以前的题目了, 刚开了博客,来写一波题解 先看一波提交记录: 调了好几天QAQ 唉! 要是这些高手里有我估计直接 输出1 就AC了 算法 DFS + 优化剪枝(用了一点状态压缩) 剪枝 1:求最小值很容易向导最优化剪枝 if(ws>=ans) return; //剪枝 1:最优化剪枝 2:若一个高手会做的题有另一个高手都会做,则这个高手没有用 for(int i=1;i<=w;i++) for(int j=1;j<i;j++) {; i…
\(problem\) 与这题 灰常的相似 然后内存可能过大 开个滚动数组 因为数塔问题总是 只需要上面一行的两个状态(这题就是数塔问题) 下面的代码与原题不符.(原题要输出路径)想抄的可以走了 输出路径只需要数组记录一下就好了. #ifdef Dubug #endif #include <bits/stdc++.h> using namespace std; typedef long long LL ; inline LL In() { LL res(0),f(1); register ch…
题目链接 SCOJ TOPOI 题目描述 Problem 给定一个包含n个顶点m条边的带权有向图,找一条边数最多的路径,且路径上的边的权值严格递增.图中可能有重边和自环. Input Data 第一行,两个整数n和m,表示顶点数和边数.接下来m行,每行三个整数u,v,w,表示顶点u到顶点v有一条权值为w的边. Output Data 一行,一个整数. Input Sample 1 3 31 2 12 3 23 1 3 Output Sample 1 3 Input Sample 2 6 7 1…
得分: \(100+5+100=205\)(真的是出乎意料) \(T1\):抵制克苏恩(点此看题面) 原题: [BZOJ4832][Lydsy1704月赛] 抵制克苏恩 应该还是一个比较简单的\(DP\)吧(我是用记忆化搜索实现的). 可以用\(f_{n,A,B,C}\)来表示还有\(n\)个回合,三种血量奴隶主个数分别为\(A,B,C\)时所造成的期望伤害. 比较显然,应该有四种情况: 第一种情况:对一血奴隶主造成伤害.这样就杀死了一个一血奴隶主,且不会增加新的奴隶主,因此可以将\(f_{n,…
初期:一.基本算法:     (1)枚举. (poj1753,poj2965)     (2)贪心(poj1328,poj2109,poj2586)     (3)递归和分治法.     (4)递推.     (5)构造法.(poj3295)     (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996)二.图算法:     (1)图的深度优先遍历和广度优先遍历.     (2)最短路径算法(dijkstra,bellman-ford,floyd,hea…
初期: 一.基本算法:      (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法.      (4)递推.      (5)构造法.(poj3295)      (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996) 二.图算法:      (1)图的深度优先遍历和广度优先遍历.      (2)最短路径算法(dijkstra,bellman-ford…
leetcode代码 利用堆栈:http://oj.leetcode.com/problems/evaluate-reverse-polish-notation/http://oj.leetcode.com/problems/longest-valid-parentheses/ (也可以用一维数组,贪心)http://oj.leetcode.com/problems/valid-parentheses/http://oj.leetcode.com/problems/largest-rectang…
本文来自:http://www.cppblog.com/snowshine09/archive/2011/08/02/152272.spx 多版本的POJ分类 流传最广的一种分类: 初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(poj3295) (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996) 二.图算法:…