就50分,帮忙看一下
查看原帖
就50分,帮忙看一下
1349739
linrun0504楼主2024/7/29 19:25
#include<bits/stdc++.h>
using namespace std;
int a[2000000];
int main(){
	int n,x,c=0;
	cin>>n>>x;
	for(int i=1;i<=x;i++){
		cin>>a[i];
	}
	sort(a+1,a+x+1);
	for(int i=1;i<=x;i++){
		int mx=0;
		if(a[i]==100000){
			continue;
		}
		for(int j=x;j>=1;j--){
			if(a[i]+a[j]<=n){
				mx=a[j];
				break;
				
			}
		}
		if(mx==0&&a[i]!=100000){
			mx=a[i];
		}
		
		
		int cnt=0;
		for(int k=1;k<=x;k++){
			if(a[k]==100000) cnt++;
			if(a[k]==mx){
				a[k]=100000;
				break;
			}
		}
		a[i]=100000;
		c++;
		if(cnt==x){
			return 0;
		}
	}
	cout<<c;
	return 0;
}
2024/7/29 19:25
加载中...