- 博客(9)
- 收藏
- 关注
原创 拦截导弹-最长逆序长度-动态规划
nyoj第79题http://acm.nyist.net/JudgeOnline/problem.php?pid=79来源2007年北京大学计算机研究生机试真题【思路】 换个说法就是,求最长逆序的长度。f[i]是必须以a[i]结尾的最长逆序的长度。 #include#includeusing namespace std;int mai
2013-09-23 12:04:02 762
原创 开心的小明-01背包
nyoj第49题http://acm.nyist.net/JudgeOnline/problem.php?pid=49动态规划,递推关系式(动态转移方程)为v*p+a[j-v]>a[j]?a[j]=v*p+a[j-v]:0;#include#include#includeusing namespace std;int main(){ int k; cin>>k; whi
2013-09-22 11:30:11 548
原创 擅长排列的小明-递归
nyoj第19题http://acm.nyist.net/JudgeOnline/problem.php?pid=19在1-n中选取m个字符进行全排列,按字典序全部输出。可以用递归的思想,也可以用深搜的思想,但是代码是一样的。往深处递归时通过全局变量a和vis传递信息,而在返回时,要消除信息。#include#include#includeusing namespace st
2013-09-22 10:19:35 576
转载 skiing-记忆化深搜
题目地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=10这道题就是找出一条最长连续递减序列,并求出其长度。可以用记忆化深搜,求出每一点最长序列的长度,然后求最大值即可。代码如下:#include #include using namespace std; const int N=105; int a
2013-09-21 11:10:45 762
转载 BFS——NYOJ 21 三个水杯
三个水杯时间限制:1000 ms | 内存限制:65535 KB难度:4描述给出三个水杯,大小不一,并且只有最大的水杯的水是装满的,其余两个为空杯子。三个水杯之间相互倒水,并且水杯没有标识,只能根据给出的水杯体积来计算。现在要求你写出一个程序,使其输出使初始状态到达目标状态的最少次数。输入第一行一个整数N(0接下来每组测试数据有两行,第一行给出三个整
2013-09-19 10:53:43 559
转载 搜索算法的感悟——解空间
练习了将近一个月的搜索算法了,也有了一些小小的感悟。搜索算法的两个关键问题:(1):如何找到整个解空间。(2):如何剪枝。我的感悟是关于解空间的。问题的解往往需要经过一系列操作之后才能得到,而在这一系列的操作中,每一步的操作都会得到一个状态,当最终这个状态与目标状态相同时,此时也就是得到了结果,所以在搜索的过程中,着重需要处理的就是操作和状态。只有考虑了所有可能的操作,才会得到所有
2013-09-19 10:49:46 1279
转载 缩点
关于缩点以前做某些图论题,常听校队的师兄说要“缩点”。但是什么是缩点,缩的是什么点,说的人很清楚,听的人却一头雾水。经过一番努力,本人终于明白了什么是“缩点”,分享一下个人的见解,若有不正确万望指正。无向图的连通性先明白一些概念。割点:若一个点删除后(也就是与之相连的边统统去掉),无向图不再连通,那么此点称为割点。桥:若一条边断去后,无向图不再连通,那么此边称为桥。桥有
2013-09-19 08:51:29 3002
原创 归并排序之求逆序数
nyoj第117题#include#includeusing namespace std;//归并排序const int MAX_n=1000005;int a[MAX_n],buf[MAX_n],n;long long merge();int main(void){ int t,i; cin>>t; while(t--){ cin>>n; for(i=0;
2013-09-05 15:24:16 384
原创 树状数组
nyoj第116题,士兵杀敌(二),利用树状数组#include#include//#includeusing namespace std;//树状数组const int MAX_n=1000005;const int MAX_m=100005;int a[MAX_n];int n;int ta[MAX_n];//tree like arrayint sum0[MAX_n]
2013-09-05 15:22:21 372
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人