很简单的队列和栈的应用,不过读明白题意非常重要:(直接引用白书的题解)三个轨道,一个库.分别是分钟单位的轨道,5min单位的轨道,一小时单位的轨道,还有就是n容量的库.每过一分钟,一个小球从库里面出来,库符合先进先出,进入分钟轨道,如果分钟轨道里面已经有了4个,那么这四个就滑入库,而这个球则进入5min轨道,如果5min轨道已经有了11个,这11个就滑入库,而这个球则滑入小时轨道,如果小时轨道已经有了11个,则这11个滑入库,这个球最后滑入库.在轨道中的球滑入库中,轨道里的球满足先进后出.如此,…
题目特别长,大意为球的传递. 三个轨道,一个库.各自是分钟单位的轨道.5min单位的轨道.一小时单位的轨道.还有就是n容量的库. 每过一分钟,一个小球从库里面出来,库符合先进先出,进入分钟轨道.假设分钟轨道里面已经有了4个,那么这四个就滑入库,而这个球则进入5min轨道,假设5min轨道已经有了11个.这11个就滑入库.而这个球则滑入小时轨道.假设小时轨道已经有了11个,则这11个滑入库.这个球最后滑入库.在轨道中的球滑入库中,轨道里的球满足先进后出. 如此,轨道是栈.库是队列.并且模拟过程也出…
UVA 239 - Tempus et mobilius. Time and motion 题目链接 题意:这题题意也是吊得飞起,看了老半天,大概是这样: 有一个放球的队列.和3个轨道(说白了就是栈),一个容纳5,1个12,1个12,每1分钟队列出一个小球.放入栈.假设放入5的满了.就把5的放回队列,头一个放入12的.假设12的满了,就把12的放回队列.头一个放入还有一个12的栈,假设又满了.就所有放回队列(头一个最后放回),问多少天之后.队列中小球会回复原来的状态 思路:先是模拟求出一天的情况…
本题链接:点击打开链接 题目大意: 输入n表示卡车辆数,输入每辆卡车编号.即长度为7的字符串,每辆卡车编号均可由其他类型编号衍生过来,求由当中一辆衍生出其他全部的最小衍生次数(有一个字符不同就需衍生一次). 解题思路: 本题能够看做求最小生成树的问题,关键是图的构建.把每两辆车衍生次数作为权值,然后使用prime算法求解最小生成树,详细请參见代码: #include<stdio.h> #include<string.h> #define INF 0xffffff int map[2…
栈和队列的综合应用,利用栈和队列分别模拟分,5分,时槽,以及小球队列 利用求出一天后的置换可以求出周期,进而求出最大公约数(可以利用矩阵的角度,也许可以简化,因为每次都是乘上一个相同的置换矩阵) 要注意读题,时槽 满12归队的方式很不一样 #include <cstdio> #include <iostream> #include <algorithm> #include <stack> #include <queue> using namesp…
POJ 3013 Big Christmas Tree(最短路Dijkstra+优先队列优化,SPFA) ACM 题目地址:POJ 3013 题意:  圣诞树是由n个节点和e个边构成的,点编号1-n.树根为编号1,选择一些边.使得全部节点构成一棵树.选择边的代价是(子孙的点的重量)×(这条边的价值). 求代价最小多少. 分析:  单看每一个点被计算过的代价,非常明显就是从根到节点的边的价值.所以这是个简单的单源最短路问题. 只是坑点还是非常多的. 点的数量高达5w个,用矩阵存不行.仅仅能用边存.…
http://poj.org/problem?id=3162 题意:一棵n个节点的树.有一个屌丝爱跑步,跑n天,第i天从第i个节点开始跑步,每次跑到距第i个节点最远的那个节点(产生了n个距离),现在要在这n个距离里取连续的若干天,使得这些天里最大距离和最小距离的差小于M,问怎么取使得天数最多? 思路:这道题目求最远距离和HDU 2196是一模一样的,这个不是很难.关键是要怎么处理得到的数据. 可以用单调队列做也可以用线段树来做,先介绍一下单调队列. 因为有最大值和最小值,所以我们需要两个单调队列…
[POJ 2559]Largest Rectangle in a Histogram Description A histogram is a polygon composed of a sequence of rectangles aligned at a common base line. The rectangles have equal widths but may have different heights. For example, the figure on the left s…
题目 传送门:QWQ 分析 听说是水题,但还是没想出来. $ dp[i] $为$ [1,i] $的需要的喷头数量. 那么$ dp[i]=min(dp[j])+1 $其中$ j<i $ 这是个$ O(n^2)$的东西,用单调队列优化一下就行了 复杂度$ O(L) $ 代码 在POJ上交的话要改一下头文件,推荐去BZOJ上交 #include <bits/stdc++.h> using namespace std; ; ][]; int main(){ int m,s,d; scanf(&q…
POJ 3494 Largest Submatrix of All 1’s Description Given a m-by-n (0,1)-matrix, of all its submatrices of all 1’s which is the largest? By largest we mean that the submatrix has the most elements. Input The input contains multiple test cases. Each tes…