码迷,mamicode.com
首页 >  
搜索关键字:挑战程序设计竞赛    ( 124个结果
LightOJ1360 Skyscraper(DP)
题目大概是,一个数轴上n个线段,每个线段都有起始坐标、长度和权值,问从中取出没有公共交点的线段的最大权和。 取k次是个经典的最小费用最大流问题,不过这题建容量网络有20W个点,离散化最多也要6W个点,不敢跑最小费用最大流。。 其实这题,也是个经典的DP,区间图最大权独立集问题,《挑战程序设计竞赛》这
分类:其他好文   时间:2016-03-06 12:53:39    阅读次数:182
POJ 1742 Coins
《挑战程序设计竞赛》上DP的一道习题。很裸的多重背包。一开始我写的倍增,把C[i]分解成小于C[i]的2^x和一个余数r。dp[i][j]的定义前i个数字能否到凑出j来,改成一位滚动数组。#include#include#include#include#include#include#include...
分类:其他好文   时间:2015-10-15 22:08:11    阅读次数:242
【二分查找-最大化平均值】POJ2976 - Dropping Test
【题目大意】给出n组ai和bi,去掉k个使得a的总和除以b的总和最大。【思路】也就是取(n-k)个数,最大化平均值,见《挑战程序设计竞赛》P144,最后公式为c(x)=((ai-x*bi)从大到小排列的前(n-k)个的和不小于0) 1 #include 2 #include 3 #include 4...
分类:其他好文   时间:2015-09-15 23:35:13    阅读次数:427
[HDOJ5360]Hiking
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5360优先队列+贪心。(感觉这个贪心在《挑战程序设计竞赛》一书中有个类似的,有兴趣的可以找一下。)写优先队列优先级判断的时候把maxx写成minn也是醉了,调了2个小时才发现。看来应该再仔细一些啊。初始化...
分类:其他好文   时间:2015-09-04 17:08:12    阅读次数:182
堆的push,pop数组实现(挑战程序设计竞赛)
堆是形如下图的二叉树 堆的最重要的性质,就是儿子的值一定不小于父亲的值。树的节点从上到下,从左到右的顺序紧凑排列。 【插入数据】push   首先在堆的末尾插入数据,然后不断向上提升直到没有大小颠倒 【删除数据】pop 从堆中删除最小的数据 先将堆中最后一个节点的值复制到根节点上,并且删除最后一个节点。然后不断向下交换,直到没有大小颠倒; 在...
分类:编程语言   时间:2015-08-05 10:44:48    阅读次数:143
poj2431 Expedition (优先队列) 挑战程序设计竞赛
题目链接:http://poj.org/problem?id=2431 Expedition Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9148   Accepted: 2673 Description A group of cows grabbed...
分类:其他好文   时间:2015-08-05 08:59:03    阅读次数:379
《挑战程序设计竞赛》 大区间内素数的个数
题意: 给一个区间边界值很大的区间,但是区间大小较小,求出该区间内所有质数个数。 知识补充: 因数枚举:分解一个数n,至于要从1 枚举到 n??√\sqrt n 即可,然后把i和 n / i 当做因数加入vector 整数分解(把一个整数枚举出其质数基连乘的形式):从2开始枚举质数基,然后每次把该整数尽可能的被当前质数除去最大次数,这样该整数就会变小,极大减少枚举量。注意和map搭配使用,记录每...
分类:其他好文   时间:2015-07-28 18:41:49    阅读次数:104
437 - The Tower of Babylon(记录结果再利用DP)
最近准备进入动态规划的章节,仔细看了看紫书上对01背包的讲解,感觉很好。。之前看《挑战程序设计竞赛》那本书,就没有讲的那么深刻 。      更加深刻的理解了什么叫记录结果再利用,手工操作了一遍01背包的过程,也有点明白它的状态是如何转移的了,而且那个状态方程所构成的递推关系真的很巧妙 。 言归正传。。这道题就是嵌套矩形问题稍微改了一下,之前的嵌套矩形只需要维护一个状态量就行了,但是这道题是立方...
分类:其他好文   时间:2015-07-10 22:21:49    阅读次数:213
【读书笔记/解题报告/复健向】动态规划
《挑战程序设计竞赛》2.3.1(POJ3624/NOIP2004采药问题)最基础的01背包问题,标程性质,又二维和一维两种写法。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 const int MAXN=3...
分类:其他好文   时间:2015-06-26 19:25:24    阅读次数:139
挑战程序设计竞赛 二叉堆(优先队列)的实现
几个概念: 完全二叉树:是指除叶子节点那层外,叶子节点以上的第k层都含有2k2^k个节点而且叶子节那层的节点都靠左方。 满二叉树:与完全二叉树先比,多了连叶子节点也要全满的限制条件。 堆的代码实现(数组实现):int heap[10000], sz = 0;void push(int x) { //向堆里面增加元素X int i = sz++, p; while(i > 0)...
分类:其他好文   时间:2015-04-17 22:22:15    阅读次数:202
124条   上一页 1 ... 8 9 10 11 12 13 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!