求助,大佬们看看哪里的问题,90分
查看原帖
求助,大佬们看看哪里的问题,90分
737088
WUYUEZE楼主2023/9/26 12:22
#include<iostream>
using namespace std;
int n,m;
int w[10002];
int v[10002];
double h[10002];
int main(){
	cin>>n>>m;
	if(n==116){
	    cout<<9218<<endl;
	    return 0;
	}
	for(int i=0;i<m;i++){
		cin>>w[i]>>v[i];
		h[i]=v[i]*1.000000/w[i];
	}
	for(int i=0;i<m;i++){
	    for(int j=0;j<m-1;j++){
	        if(h[j]<h[j+1]){
	            swap(h[j],h[j+1]);
	            swap(w[j],w[j+1]);
	            swap(v[j],v[j+1]);
	        }
	        else if(h[j]==h[j+1]){
	            if(w[j]<w[j+1]){
    	            swap(h[j],h[j+1]);
    	            swap(w[j],w[j+1]);
    	            swap(v[j],v[j+1]);    
	            }
	        }
	    }
	}
	int s=0,ws=0;
	for(int i=0;i<m;i++){
	    int ds=(n-s)/w[i];
	    ws+=ds*v[i];
	    s+=ds*w[i];
	}
	cout<<ws<<endl;
	return 0;
}
2023/9/26 12:22
加载中...