PAT 1070. Mooncake
来源:互联网 发布:ed hardy正品网络购买 编辑:程序博客网 时间:2024/05/21 22:33
之前一直在一组测试数据上WA,之后将amount从 int 改成 double 就AC了,可能是除法时的精度问题吧。
#include <iostream>#include<stdio.h>#include<stdlib.h>#include<vector>#include<cstring>#include<algorithm>using namespace std;//PAT 1070int N;int D;double ans;class cake{public: double amount; double prices; double value;public: cake() { amount=0; prices=0; value=0; } cake( double a,double p,double v) { amount=a; prices=p; value=v; } bool operator < (const cake& nd) const { return value> nd.value; }};bool cmp(cake c1,cake c2){ return c1.value>c2.value;}cake a[1010];void input(){ scanf("%d %d",&N,&D); for(int i=0;i<N;i++) { scanf("%lf",&a[i].amount); } for(int i=0;i<N;i++) { scanf("%lf",&a[i].prices); a[i].value=a[i].prices/a[i].amount; }}int main(){ //freopen("input.txt","r",stdin); input(); sort(a,a+N); for(int i=0;i<N;i++) { if(D>=a[i].amount) { ans+=a[i].prices; D-=a[i].amount; } else { ans+=a[i].value*D; break; } } printf("%.2lf\n",ans); return 0;}
0 0
- 【PAT】1070. Mooncake (25)
- PAT 1070. Mooncake
- PAT 1070. Mooncake
- PAT 1070. Mooncake (贪心)
- PAT 1070. Mooncake (25)
- PAT 1070. Mooncake (25)
- PAT 1070. Mooncake (25)
- pat 1070. Mooncake (25)
- PAT 1070. Mooncake (25)
- PAT 1070. Mooncake (25)
- PAT 1070. Mooncake
- 【PAT】1070. Mooncake
- PAT (Advanced) 1070. Mooncake (25)
- PAT A 1070. Mooncake (25)
- ZJU-PAT 1070. Mooncake (25)
- PAT(A) - 1070. Mooncake (25)
- PAT甲级1070. Mooncake (25)
- PAT-A 1070. Mooncake (25)
- Android画图之Matrix(一)
- How can I get the logical valume by the datafile names and ASM disks?
- iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件
- 在AngularJS中使用$q同步读取服务器数据
- [微信机器人_03]基本框架设计
- PAT 1070. Mooncake
- angularjs中$http模块POST请求request payload转form data
- MyEclipse10 安装JBPM5.4插件最简单方法
- 霍纳法则和二进制幂
- 常见算法题
- linux之fstab文件详解
- 收集一些top软件公司经典算法面试题
- 大数据的处理(Sqlserver2008)
- 动态加载指令问题