码迷,mamicode.com
首页 >  
搜索关键字:思维题    ( 492个结果
NOIP2012 借教室
自己YY出来的方法,时间复杂度为n*m,但实际上并没有这么多,codeVS上最慢的一组有300多ms。 对于每一个订单,在它的左端点加上需要的教室数量,在右端点加1的位置减去需要的教室数量。然后统计前缀和,如果有某个点的前缀和大于了当天教室的数量,那么就有的订单就有问题了,然后从订单编号从小到大统计在订单区间的教室数量,保存恰好不能满足的那个订单;对于之后不满足题意的前缀和,统计订单的最大编号不...
分类:其他好文   时间:2015-08-18 21:30:25    阅读次数:194
POJ3761 Bubble Sort
对1~n组成的序列进行冒泡排序,一共进行了k趟,问有几个符合题意的序列。 注意:这里指每一趟是指交换当前相邻的所有逆序对,例如:2 1 4 3进行一趟交换就是1 2 3 4 如果我们细心观察,就会发现,需要进行的趟数等于序列中对于某个最多逆序对数的数。例如:在序列 3 2 1 4中,3的逆序对为0,2的逆序对为1,1的逆序对为2...
分类:其他好文   时间:2015-08-17 23:47:43    阅读次数:172
NOIP2010 引水入城
模拟考试的时候由于前面的题耗时太严重,所以没有写 对于第一行的每个城市,我们可以预处理出在这座城市建立蓄水厂,水流能到达最下面一行的哪些城市;如果最终的题目是有解的,那么最后一行这些被覆盖的城市是连续的,反证:如果水流到达最下面一行的城市是断开不连续的,则说明中间有城市海拔比四周都高,其他城市过来的水流也流不上去,因此永远无法被覆盖,与我们之前的条件相矛盾。 预处理出来每做城市的覆盖范围后,这...
分类:其他好文   时间:2015-08-16 23:17:24    阅读次数:122
NOIP2010 乌龟棋(多维DP)
考试的时候老是在想第一维是走到点i时候的最大值,然后没有考虑到这样可以计算出每种牌用了多少张。。。。。 dp[i][j][k][l]表示第一种牌用i张,第二种牌用j张,第三种牌用k张,第四种牌用l张的最大值 #include #include #define MAXN 355 using namespace std; int c[5],a[MAXN],f[41][41][41][41]; in...
分类:其他好文   时间:2015-08-16 21:32:02    阅读次数:104
URAL1306 Sequence Median(卡内存神题)
给出n个数,n 卡内存的神题,用数组存下来刚好1mb,再加上运行时消耗内存,马上爆。因此我们用优先队列存储一半的数。网上的某些代码,用priority_queue全爆内存。我存的125000长度的数组,加上STL的make_heap() #include #include using namespace std; int a[125010]; int main() { in...
分类:其他好文   时间:2015-08-16 15:16:36    阅读次数:126
【思维题】 Codeforces 570D Tree Requests
通道题意:一棵树,每个节点有一个点值(字符),问u子树的深度为k的所有节点组成的字符串是否为回文思路:搜出dfs序及该节点的深度,那么u节点深度为K的那一段肯定在dfs序[l,r]区间内,然后对于回文的处理,要么这段异或和为0,要么lowbit(x)=x代码:#include using names...
分类:其他好文   时间:2015-08-14 15:04:05    阅读次数:109
UVA11261 Bishops
给出一个n*n的棋盘和m个象,每个象能够覆盖它所在的对角线,问没有被覆盖的点有多少个 n*n的暴力方法很好想出来,但是肯定超时。但是我们可以把主对角线和从对角线保存下来,预处理好没有被覆盖的点,dp[i]表示第i条从对角线上面没有被覆盖的点,一共有2*n-1条从对角线。对于从对角线的上半部分,dp[i]初始化为dp[i-2]因为他们的奇偶性相同,则除去第i条从对角线的两个端点以外,如果第i-2条...
分类:其他好文   时间:2015-08-13 22:17:15    阅读次数:145
HDU 5379 Mahjong tree (详解,构造+思维)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5379 题面: Mahjong tree Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1148    Accepted...
分类:其他好文   时间:2015-08-13 12:18:34    阅读次数:108
CodeForces 11B Jumping Jack(思维)
题意:数轴上从0出发可向左右走,第i步的距离为i,求到达x的最小步数(x#include#includeusing namespace std;int n,m,sum;int main(){ int i,j,k; while(scanf("%d",&n)!=EOF){ if...
分类:其他好文   时间:2015-08-11 11:39:21    阅读次数:167
剑指offer_面试题17_合并两个排序的链表(两种思维)
题目:输入两个递增排序的链表,合并这两个链表,并使新链表中的结点仍然是按照递增排序的。 第一种思维:合并两个排序的链表,类似于合并两个排序数组,所不同的仅是一个用链表保存数据,一个用数组保存数据。 算法如下:(下面的算法前提是:头结点 不是 链表的第一个数据节点。) /**方法一:合并两个排序链表,使用了新创建的链表来保存,没有改动两个原始链表*/ ListNode *merge_tow...
分类:编程语言   时间:2015-08-11 01:31:00    阅读次数:176
492条   上一页 1 ... 39 40 41 42 43 ... 50 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!