社区讨论
样例过不了题解看不懂25pts求条
P1016[NOIP 1999 普及组/提高组] 旅行家的预算参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mhj0i3z1
- 此快照首次捕获于
- 2025/11/03 18:43 4 个月前
- 此快照最后确认于
- 2025/11/03 18:43 4 个月前
CPP
#include<bits/stdc++.h>
#define ll long long
#define ld long double
using namespace std;
struct node{
ld d,p;
};
ll n;
ld s,c,l,p;
node a[10];
ld solve[10];
ld price,minx;
void print(){
ll t=price*1000;
if(t%10>=5){
price/=10;
price++;
}
cout<<price;
}
int main(){
//freopen("code.in","r",stdin);
//freopen("code.out","w",stdout);
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>s>>c>>l>>p>>n;
for(ll i=1;i<=n;i++){
cin>>a[i].d>>a[i].p;
}
minx=a[1].p;
for(ll i=1;i<=n;i++){
if((a[i].d-a[i-1].d)/l>c){
cout<<"No Solution";
return 0;
}
minx=min(minx,a[i].p);
solve[i]=minx;
}
for(ll i=1;i<n;i++){
price+=solve[i]*(a[i+1].d-a[i].d);
}
price+=solve[n]*(s-a[n].d);
print();
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...