Codeforces Round #266 (Div. 2) A

来源:互联网 发布:betterzip 3.1.2 mac 编辑:程序博客网 时间:2024/05/29 15:25

A. Cheap Travel


        题意:你要坐n站地铁,a卢布可以坐1站,b卢布可以坐m站。问最省的坐法花多少钱。

        思路:贪心。超过m站的,先比较性价比,优先坐性价比高的。然后剩下不够m站的,比较是一站一站买票好,还是直接花b的钱坐到底好。


#include <iostream>             #include <stdio.h>             #include <cmath>             #include <algorithm>             #include <iomanip>             #include <cstdlib>             #include <string>             #include <memory.h>             #include <vector>             #include <queue>             #include <stack>             #include <map>           #include <set>           #include <ctype.h>           #define INF 1<<30         #define ll long long         #define max3(a,b,c) max(a,max(b,c))         using namespace std;int main(){int n,m,a,b;while(cin>>n>>m>>a>>b){if((b+0.0)/m<a+0.000001){int tmp=n/m;int tmp2;if((n%m)==0){tmp2=0;}else{tmp2=min(b,a*(n-tmp*m));}cout<<tmp*b+tmp2<<endl;}else{cout<<n*a<<endl;}}return 0;}


0 0
原创粉丝点击