40分,改完后连编译也没过,求调!!!
查看原帖
40分,改完后连编译也没过,求调!!!
1389312
NICOLAS0801楼主2025/1/30 14:49

这个代码前8个测试点AC,其它RE

#include<bits/stdc++.h>
using namespace std;
int h[10005];
int main(){
	int n,b;
	cin>>n>>b;
	for(int i=1;i<=n;i++){
		cin>>h[i];
	}
	sort(h+1,h+n+1);
	int sum=0,ans=0;
	for(int i=n;i>0;i--){
		sum+=h[i];
		ans++;
		if(sum>=b){
			break;
		}
	}
	cout<<ans;
}

又看了遍题目,以为要把int开成long long,有写了一遍,结果在c++编译过了,在洛谷没过,求调!!!!

#include<bits/stdc++.h>
using namespace std;
long long h[2000000010];
int main(){
	long long n,b;
	cin>>n>>b;
	for(int i=1;i<=n;i++){
		cin>>h[i];
	}
	sort(h+1,h+n+1);
	long long sum=0,ans=0;
	for(int i=n;i>0;i--){
		sum+=h[i];
		ans++;
		if(sum>=b){
			break;
		}
	}
	cout<<ans;
}
2025/1/30 14:49
加载中...