pat-bl-1020
来源:互联网 发布:数据库系统发展历史 编辑:程序博客网 时间:2024/06/10 13:30
pat-bl-1020
2016-12-16
- 使用了结构体,利用sort排序
/** *pat-bl-1020 *2016-12-16 *C++ version * */#include<iostream>#include<algorithm>using namespace std;struct MOONCAKE{ double amount; double price; double unitPrice;};bool cmpUnitPrice(MOONCAKE a, MOONCAKE b){ return a.unitPrice > b.unitPrice;}int main(){ int kind, amount; freopen("in.txt", "r", stdin); cin >> kind >> amount; MOONCAKE mc[kind]; for(int i = 0;i < kind;i++) { cin >> mc[i].amount; } for(int i = 0;i < kind;i++) { cin >> mc[i].price; } for(int i = 0;i < kind;i++) { mc[i].unitPrice = 1.0 * mc[i].price / mc[i].amount; //cout << "mc" << i << ":" << mc[i].unitPrice << endl; } sort(mc, mc+kind, cmpUnitPrice); // for(int i = 0;i < kind;i++) // { // cout << "mc amount" << i << ":" << mc[i].amount << endl; // } double earnings = 0; int i = 0; while(amount > 0) { if(amount > mc[i].amount) { earnings += mc[i].price; amount -= mc[i].amount; } else { earnings += mc[i].price * amount / mc[i].amount; //cout << "price:" << mc[i].price << ", amount:" << amount << ", mcamount:" << mc[i].amount << endl; amount = 0; } i++; } printf("%.2f\n", earnings); return 0;}
-FIN-
0 0
- pat-bl-1020
- PAT (BL) 1001
- PAT-BL-1011
- PAT-BL-1007
- PAT-BL-1008
- pat-bl-1009
- pat-bl-1012
- pat-bl-1010
- pat-bl-1013
- pat-bl-1014
- pat-bl-1015
- pat-bl-1016
- pat-bl-1021
- pat-bl-1022
- pat-bl-1023
- pat-bl-1024
- pat-bl-1025
- pat-bl-1026
- 1-QT Creator的下载与安装
- 向量多元线性回归
- 日常小结-关于swing某死锁问题的小结
- (UTF-8 /GBK/Unicode/GBK2312)
- 判断是否在微信中打开
- pat-bl-1020
- L版本12小时制状态栏时间不显示AM/PM mtk
- 利用动态加载实现手机淘宝的节日特效
- 庐山会议
- 自旋锁与互斥锁的对比、手工实现自旋锁
- Eclipse For ESP8266(在windows x86环境下建立Esp8266编译环境)
- Handler的工作原理
- 互联网金融入门篇(一) 借方和贷方
- Android 性能测试