蒟蒻求助
查看原帖
蒟蒻求助
1321274
Zivsfamily楼主2024/8/21 19:29

w和f传不进来

#include<bits/stdc++.h>
using namespace std;

struct coin{
	double w;
	double p;
	double per;
	bool operator < (coin rhs){
		return per > rhs.per;
	}
};

int n;
double ans,t;
coin a[105];

int main(){
	scanf("%d%f",&n,&t);
	for(int i=1;i<=n;i++){
		double w,p,per;
		scanf("%f%f",&w,&p);
		a[i].per=p/w;
		a[i].p=p;
		a[i].w=w;
//		printf("1.a[i]=%f,%f\n",a[i].w,a[i].per);
	}
	sort(a+1,a+n+1);
	for(int i=1;i<=n;i++){
//		printf("a[i]=%f\n",a[i].p);
		if(t>=a[i].p){
			t-=a[i].p;
			ans+=a[i].p;
		//	printf("ans=%f\n",ans);
		}
		else{
			ans+=a[i].per*t;
			t=0;
	//		printf("ans=%f\n",ans);
		}
	}
	printf("%.2f",ans);
	return 0;
} ```
2024/8/21 19:29
加载中...