- 博客(8)
- 收藏
- 关注
原创 贪心算法-删数问题
4-2 删数问题 (110 分)给定n位正整数a,去掉其中任意k≤n 个数字后,剩下的数字按原次序排列组成一个新 的正整数。对于给定的n位正整数a和正整数 k,设计一个算法找出剩下数字组成的新数最 小的删数方案。输入格式:第 1 行是1 个正整数 a。第 2 行是正整数k。输出格式:输出最小数。输入样例:在这里给出一组输入。例如:1785434输出样例:在这里给出相应的输出。...
2019-12-16 16:12:58 855
原创 动态规划-最低通行费
一个商人穿过一个N×N的正方形的网格,去参加一个非常重要的商务活动。他要从网格的左上角进,右下角出。每穿越中间1个小方格,都要花费1个单位时间。商人必须在(2N-1)个单位时间穿越出去。而在经过中间的每个小方格时,都需要缴纳一定的费用。这个商人期望在规定时间内用最少费用穿越出去。请问至少需要多少费用?注意:不能对角穿越各个小方格(即,只能向上下左右四个方向移动且不能离开网格)。输入格式:第...
2019-12-16 16:07:39 434
原创 两个有序序列的中位数(二分)
#includeusing namespace std;int a[100000],b[100000];int search(int,int,int,int);int main(){int n,i;while(cin>>n){for(i=0;i<n;i++)cin>>a[i];for(i=0;i<n;i++)cin>>b[i]...
2019-12-16 16:05:40 234
原创 分治法的设计思想与实例(二分,合并,快排)
分治法的基本思想是将一个规模为n的问题分割成k个规模较小的子问题,这些子问题相互独立切与原问题相同。递归的解这些子问题,然后将各子问题的解合并得到原问题的解。它的一般算法设计模式如下:divide(n){ if(fabs(n)<=n0)return solve(n); a1=divide(n1); a2=divide(n2); a3=divide(n3)...
2019-12-16 16:04:33 429
原创 动态规划的设计思想与实例(最大子段和、最长公共子序列、0-1背包、编辑距离)
动态规划算法与分治法类似,其基本思想是将总问题分解成若干个子问题,先求解子问题,再结合这些子问题的解得到原问题的解。与分治法不同的是,动态规划求解的问题经分解得到的子问题往往不是相互独立的。基本思想:将总问题分解成多个子问题(子问题也可以继续分解,直到无法分解),计算子问题,用一个表保存已解决的子问题的答案,算完子问题后回到总问题时从表中寻找已求得的答案,根据要求挑选最优解,加上总问题的里的具...
2019-12-16 16:01:37 261
原创 字典树-Phone List及清空字典树(避免Memory Limit Exceeded)
Given a list of phone numbers, determine if it is consistent in the sense that no number is the prefix of another. Let’s say the phone catalogue listed these numbers:1.Emergency 9112.Alice 97 625 99...
2019-03-21 16:45:25 392
原创 宽搜&数据压缩-胜利大逃亡(续)有详细注释
Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)……这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁的门,钥匙藏在地牢另外的某些地方。刚开始Ignatius被关在(sx,sy)的位置,离开地牢的门在(ex,ey)的位置。Ignatius每分钟只能从一个坐标走到相邻四个坐标中的其中一个。魔王每t分钟回地牢视察一次,若发现Ignatius不...
2019-02-22 16:15:10 145
原创 并查集&树-Is It A Tree?带详细注释
A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed edges between nodes satisfying the following properties.There i...
2019-02-21 10:13:24 354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人