这是一道稍微仔细想想就可以做出来的简单题,而我wa了两次,这也是把它写上来的原因,只是因为我没有认真想,还是不够仔细啊,还是很马虎啊,不能慌张,得仔细读题,慢慢想题。
思路:
一共只有几种情况:1全部用单价p买;2全部用套装q买;3先用套装买,剩下的用单价p买
注:不必判断先用单价p再用套装(如果先用p的话就证明单价比套装更划算(买相同数量所需要的话费))
贴代码:
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<algorithm> using namespace std; int main() { int T,n,m,p,q; scanf("%d",&T); while(T --) { scanf("%d%d%d%d",&n,&m,&p,&q); int ans,ans1,ans2,ans3; ans1 = p*n; if(n%m==0) ans2 = n/m*q; else ans2 = (n/m+1)*q; ans3 = n/m*q + n%m*p; ans = min(ans1,min(ans2,ans3)); printf("%d\n",ans); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-05 12:49:36