【Codeforces 91B】Queue】的更多相关文章

[链接] 我是链接,点我呀:) [题意] [题解] 对于每个i,用二分的方法求出来y所在的位置j. 可以这样求. 假设现在二分到了位置mid. 那么随便用个rmq求出来mid..n这一段的最小值temp. 看看temp是否满足<a[i] 如果满足的话,那么很好,我们让l=mid+1,然后再尝试往右一点就好了. 否则的话,说明太靠右了,那么就往左一点r = mid - 1 初值l = i,r = n. [代码] #include <bits/stdc++.h> #define rep1(i…
[codeforces 415D]Mashmokh and ACM 题意:美丽数列定义:对于数列中的每一个i都满足:arr[i+1]%arr[i]==0 输入n,k(1<=n,k<=2000),问满足[数列长度是k && 数列中每一个元素arr[i]在1~n之间 && 数列中元素可以重复]的数列有多少个?结果对10^9+7取余 解题思路:dp[i][j]表示长度是j,最后一位是i的种数 if(kk%i==0) dp[kk][j+1]+=dp[i][j] #inc…
[题目链接]:http://codeforces.com/contest/767/problem/B [题意] 排队去办护照; 给你n个人何时来的信息; 然后问你应该何时去才能在队伍中等待的时间最短; (如果你和别人同时到,你要等到和你同时到的人全都办完了才轮到你); [题解] 细节题吧. 首先大体思路就是: 枚举那个人在哪个人办完之后办; 如果那个人办完之后和下一个时间的人之间有空隙->直接输出那个枚举的人办完后的时间->因为这表示等待时间为0的情况; 否则如果没有空隙,那么就要在下一个时间…
[题目链接]:http://codeforces.com/contest/515/problem/D [题意] 给你一个n*m的格子; 然后让你用1*2的长方形去填格子的空缺; 如果有填满的方案且方案是唯一的; 则输出那个方案,否则,输出不唯一; [题解] 记录每个点的度; 每个点的度,为这个点4个方向上空格的个数; 优先处理度数为1的点; 这些点的摆放方式肯定是唯一的; 摆完这些点(两个之后),与之相连的点的度数都减1: 看看有没有新的度数为1的点; 很像拓扑排序对吧. 最后看看占据的点是不是…
[题目链接]:http://codeforces.com/contest/510/problem/C [题意] 给你n个字符串; 问你要怎么修改字典序; (即原本是a,b,c..z现在你可以修改每个字母在字典序中的位置了); 才能使得这n个字符串是字典序升序的; [题解] 对于第i个字符串; 让他和第i+1..n个字符串比较->j; 找到第一个不同的位置pos; 然后 必然是要 s[i][pos]< s[j][pos]的: 拓扑排序! 即s[i][pos]建一条边指向s[j][pos] 然后做…
[题目链接]:http://codeforces.com/contest/796/problem/D [题意] 在一棵树上,保证每个点在距离d之内都有一个警察局; 让你删掉最多的边,使得剩下的森林仍然满足上述约束; [题解] 从每个警察局开始进行bfs; 这样每个路线第一次到达的点肯定是最短路; 所以bfs的时候遇到没访问过的点,就记录它被访问,即它被这个状态一开始的警察局所管辖(控制); 则可以想象每个警察局都同时往外扩张; 则每个警察局管的范围就确定是那些了; 则那些点肯定是到那个管辖它的警…
[题目链接]:http://codeforces.com/problemset/problem/716/D [题意] 给你一张图; 这张图上有一些边的权值未知; 让你确定这些权值(改成一个正整数) 使得s到t的最短路恰好为L [题解] 首先; 算出两个值 temp1->所有的未知边的权值都为1->算出s到t的最短路; temp2->所有的未知边的权值都为INF->算出s到t的最短路; 则必须要有 temp1<=L<=temp2 否则无解; 明白这个之后; 为每一个未知的…
[题目链接]:http://codeforces.com/problemset/problem/505/D [题意] 让你构造一张有向图; n个点; 以及所要求的m对联通关系(xi,yi) 即要求这张有向图中的点xi能够联通到点yi; 问你最少需要添加多少条边才够; [题解] 先将输入的m条边; 当成无向边,构成一张无向图; 然后对于构成这张图的各个联通块; 设len为这个联通块的节点个数; 如果这个联通块它对应的有向图内有环; 则这个联通块需要len条有向边; (即这len个节点首尾相连构成一…
[题目链接]:http://codeforces.com/problemset/problem/95/C [题意] 给你n个点,m条边; 每个点有一辆出租车; 可以到达离这个点距离不超过u的点,且在这个距离范围里面,路费都是v; 问你从起点到终点的最小花费; [题解] 重新建图; 每个点; 连一条边到这个点的出租车能够到达的点(从每个点求最短路); 然后边权都是v; 然后在从这个新建的图上从起点开始跑最短路; [Number Of WA] 0 [完整代码] #include <bits/stdc…
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Roman planted a tree consisting of n vertices. Each vertex contains a lowercase English letter. Vertex 1 is the root of the tree, each of the n …