求分析!
查看原帖
求分析!
345095
fhzzxxx楼主2020/7/24 21:19

只通过了第一个。


放上代码,请过目。

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
struct dao{
	int jin;//数量
	int jia;//总价
	double dj;//单价
};
bool jx(dao a,dao b){
	return a.dj>a.dj;
}
int main(){
	int n,t,i,j,t1=0;
	double tm=0;
	cin>>n>>t;
	dao d[n+1]={0};
	for(i=0;i<n;i++){
		cin>>d[i].jin>>d[i].jia;
	  d[i].dj=d[i].jia*1.0/d[i].jin;
	}
	sort(d,d+n,jx);
	//for(i=0;i<n;i++) cout<<d[i].dj;排序测试
	for(i=0;i<n;i++){
		if(t>d[i].jin) {
			t-=d[i].jin;
			tm+=d[i].jia;
		}
		else {
			if(t==0) break;
			tm+=t*d[i].dj;
			break;
		}
	}
	printf("%.2lf",tm);
	return 0;
}

2020/7/24 21:19
加载中...