UVa11093】的更多相关文章

题意:环形跑道上有n n<=100000 个加油站  编号为1-n  第i个加油站可以加油pi加仑   从加油站i开到下一站需要qi加仑   你可以选择一个加油站作为起点 初始油箱为空   如果可以走完一圈  那么输出最小的起始站点  否则输出-1 如果   对每个加油站作为起始点进行枚举的话  那么复杂度为 n^2 其中有一个重要的思路可以优化: 比如从第一个点最为起始点   如果能走一圈 那么就成了  第一个也为最小起始点 如果 走到t点   t到t+1走不了     那么 第2个点到 第t…
//当汽车从第i个加油站到第j个加油站无法继续走下去的时候,这时候[i,j]区间的所有加油站都无法作为起点,因为当我们到第k个加油站的时候,起码是带着>=0的油去的,现在不带油直接从第k个开始肯定更不行了. 1 #include<bits/stdc++.h> using namespace std; ; int t; int n; int icase; ]; ]; int main(){ scanf("%d",&t); while(t--){ scanf(&q…
https://vjudge.net/problem/UVA-11093 题意:环形跑道上有n个加油站,编号为1~n.第i个加油站可以加油pi加仑,从加油站i开到下一站需要qi加仑汽油.输出最小的起点,使得可以走完一圈后回到起点. 思路:直接枚举.注意剪枝就可以了,如从1号加油站出发,开到加油站p前没油了,那么2,3,4...p-1肯定不是解. #include<iostream> using namespace std; + ; int n; int ans; int p[maxn]; in…