`
文章列表
// [解题方法] // 将筷子按长度从大到小排序 // 排序原因: // 由于一组中A<=B<=C // 选第i根筷子作为A时,必然要选第i-1根作为B,否则不会达到最优 // dp[i][j]表示选了对于前j根筷子选了i个筷子集合时的最小花费 // 设c[j]为选j作为A,j-1作为B时的花费(c[j]=(w[i]-w[i-1])^2;),状态转移如下: // dp[i][j] = min( dp[i-1][j-2]+c[j](j>=3*i), dp[i][j-1](j>=3*i+1) ); // ...
// [题意] // n辆车按顺序安排在一个渡口的左边或右边,不超过渡口长度最多放多少辆 // 相当于n个物品按顺序尽量多地放在两个相同容量的背包里 // 如果放不下后面的就不放了,题目还要求输出要放的车都放哪边?记录路径即可 // 由于是按顺序放,所以第i辆车放的话,i前面的车必然已经放好了,不可能不放 // [解题方法] // dp[i][j]=1 表示左边车占了j长度时,可以放i辆车 // 设前i辆车总长度为sum[i],则: // 对于dp[i][j]左边占了j长度,右边就必然占了sum[i]-j的长度了 // dp[i][j]=0 表示这种 ...
// [解题方法] // 记忆化搜索(递归,子问题的结果用备忘录存起来,避免重复求解) // 设棍子长度n,输入的c[i]是棍子上的坐标 // dp[x][y](即dfs(x,y))表示砍c[x]到c[y]段的最小花费 // 每次砍c[x]~c[y]段的时候枚举砍的位置i // 状态转移:dp[x][y] = min(dp[x][i] + dp[i][y] + c[y]-c[x])(x<=i<=y) // 注:-1表示无穷大 #include <iostream> #include <string.h> #include ...
// [解题方法] // 记忆化搜索(递归,子问题的结果用备忘录存起来,避免重复求解) // 二维nxt数组按照题意记录路径 // dp[x][y](即dfs(x,y))表示从(x,y)走到最右边需要的最小花费 #include <iostream> #include <string.h> #include <stdio.h> #include <stdlib.h> #include <algorithm> using namespace std; #define LL long long #def ...
// 乌龟塔问题:每个乌龟有力量和重量,求最多能堆多少乌龟? // 注:乌龟的力量表示背上能承受的重量(包括自己的重量) // [解题方法] // 对乌龟数组按力量S从小到大sort(若S一样,无所谓) // 堆的时候是后面的乌龟堆在下面 // 为什么这样sort得到的结果最好? // 原因:对于乌龟a和乌龟b,设as<bs, // 若a能背b,则as>=aw+bw,那么必有:bs>aw+bw,即b能背a // 反之,若b能背a, a就不一定能背b了 // 所以得:b更能背,所以b放后面 // dp[ ...
// [解题方法] // dp[i][j]表示Z串的[0~i]子串在X串的[0~(j-1)]子串中的出现次数 // 初始化:dp[i][0] = 0 // 状态转移1: // dp[0][j+1] = (Z[0]==X[j])?(dp[0][j]+1):(dp[0][j]) // 状态转移2(i>0): // dp[i][j+1] = (Z[i]==X[j])?(dp[i][j]+dp[i-1][j]):(dp[i][j]) // 这题需要大数运算,我偷懒用了java // 另外由于每次转移实际上只用到两个数组,所以这里就只开了两个数组循环使用,相当于 ...
// [解题方法] // 对大象增加编号属性i,以免排序后丢失 // 对大象数组倒过来sort一下(W大的在前;若W一样,S小的在前) // 对sort好的数组倒过来dp最长子序列,记录前驱 // 输出路径(由于是倒过来dp,所以输出路径不用栈,不断输出前驱即可) // 复杂度O(n^2) #include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <vector> #includ ...
KIDx的sqlite3笔记   到http://www.sqlite.org/download.html下载:   解压后得到sqlite3.h,得到的其他文件这里不会用到下载第二个,解压后得到sqlite3.dll和sqlite3.def   下面要做的是:利用sqlite3.def生成sqlite3.lib ①把sqlite3.def放到VC6的LIB.exe所在目录,例如我的VC是装在G盘的:G:\Microsoft Visual Studio\VC98\Bin ②开始菜单->运行->cmd,打开cmd命令行 (以下括号里的黑色字体是输入的内容) ...
KIDx的游戏   没有hge请先到官网下载最新版本hge:http://hge.relishgames.com/downloads.html   到博客最下方下载开源文件,要先安装配置好HGE才可运行哦,具体配置方法请自行下载博客下方的教程 代码貌似写得不好,文件风格好菜,还请大牛指教哈~~~   有bug请留言,我觉得应该还有方块浮空的情况出现=_=~   目前最新版本为:KIDx's Tetris 1.6.0   操作说明:方向键:↑旋转方块,←→移动方块,↓加速下落Ctrl瞬间下落,Enter确定/开始,Esc取消/后退 升级说明:到达Leve ...
KIDx的解题报告   第一题(比较简单,不详细解): HDU 1159 Common Subsequence 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159   题意:求两个串的最长公共子序列 代码中的dp[i][j]表示0到i-1跟0到j-1的最长公共子序列   #include <iostream> using namespace std; #define M 5005 int dp[M][M]; char a[M], b[M]; int main() { int i, ...
http://acm.hdu.edu.cn/showproblem.php?pid=2143 注意三点:①分母为0  ②要先判定整除性  ③数比较大,要用int64 #include <iostream> using namespace std; #define L __int64 bool isok (L a, L b, L c) { if (a + b == c || a + c == b || b + c == a) return true; if (a - b == c || b - a == c || b - c == a || c - ...
http://acm.hdu.edu.cn/showproblem.php?pid=2072 set以及string的一点应用 #include <iostream> #include <fstream> #include <algorithm> #include <string> #include <set> //#include <map> #include <queue> #include <utility> #include <iomanip> #incl ...
http://acm.hdu.edu.cn/showproblem.php?pid=1070 题意: ①:milk最多只能喝5天 ②:每天喝200ml ③:如果剩下的小于200ml,就要扔掉 ④:所有milk都是今天生产的 ⑤:当有多个milk一样便宜时,选择体积最大的 给出商标+1瓶的价格+体积,找出最便宜的那种milk 错了11次灰常悲催 网上很多童鞋都排序了,其实这题根本不用排序…… 错误代码: #include <iostream> #include <fstream> #include <algorithm> #include &l ...
进入USACO要注册才能看题: http://train.usaco.org/usacogate 题目:【翻译版、是别处的网站】http://www.wzoi.org/usaco/13%5C206.asp SAMPLE INPUT (file calfflac.in) Confucius say: Madam, I'm Adam. SAMPLE OUTPUT (file calfflac.out) 11 Madam, I'm Adam 水题啊………… /* ID: 1006100071 PROG: calfflac LANG: C++ */ #include < ...
进入USACO要注册才可看题: http://train.usaco.org/usacogate 题目:【翻译版、是别处的网站】http://www.wzoi.org/usaco/13%5C303.asp SAMPLE INPUT (file friday.in) 20 SAMPLE OUTPUT (file friday.out) 36 33 34 33 35 35 34 历法中的水题,不多说…… /* ID: 1006100071 PROG: friday LANG: C++ */ #include <iostream> #include <fs ...
Global site tag (gtag.js) - Google Analytics