求助,只有第一个AC
查看原帖
求助,只有第一个AC
754444
tamamocross楼主2022/10/20 22:58

上代码

#include<iostream>
using namespace std;

struct item{
	double m;
	double v;
	double p;
}; 
int main(){
	item it[1001];
	double n,v1;
	cin>>n>>v1;
	for(int i=1;i<=n;i++){
		cin>>it[i].m>>it[i].v;
		it[i].p=it[i].v/it[i].m;
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n-1;j++){
			if(it[j].p<it[j+1].p){
				swap(it[i],it[j+1]);
			}
		}
	}int k=1;
	double sum=0;
	while(v1-it[k].m>=0&&k<=n){
			sum+=it[k].v;
		v1-=it[k].m;
		k++;
	
	}
	if(k<=n)
	{
	sum+=it[k].p*v1;
	}
	printf("%.2lf",sum);
}

本蒟蒻看不出问题,请大佬们帮忙看看。

2022/10/20 22:58
加载中...