提高组贪心傻逼题。
不知道洛谷上的题解是怎么写的。
看BABA我的思路:
#include#include #include #include #include #define il inlineusing namespace std;il int gi(){ int x=0,y=1; char ch=getchar(); while(ch<'0'||ch>'9') { if(ch=='-') y=-1; ch=getchar(); } while(ch>='0'&&ch<='9') { x=x*10+ch-'0'; ch=getchar(); } return x*y;}struct zhan{ double dist,pri;}z[100045];double mon[100045];//在每个加油站最便宜多少钱的油 int main(){ double all,take,d,p,ans=0,lon; scanf("%lf%lf%lf%lf",&all,&take,&d,&p); lon=take*d;//每次该加油站最远可以到多远 int n; cin>>n; n++;//把起点加入加油站 z[1].dist=0; z[1].pri=p; for(int i=2;i<=n;i++) scanf("%lf%lf",&z[i].dist,&z[i].pri); n++; z[n].dist=all; for(int i=1;i<=n;i++) mon[i]=2e8;//赋初值 for(int i=1;i =z[j].dist) { if(z[i].pri