求助WA了第三个点+TLE最后两个点
查看原帖
求助WA了第三个点+TLE最后两个点
324119
SDF_RyanLin楼主2022/8/2 15:41
#include<bits/stdc++.h>
using namespace std;
int n,a[10000005],w,rec,sum,j;
int main()
{ 
	cin>>n;
	for(int i=1;i<=n;i++)cin>>a[i];
	for(int i=2;i<=n;i++)
	{
		int t=a[i];
		int j=i-1;
		while(t>a[j]&&j>0)
		{
			a[j+1]=a[j];
			j--;
		}
		a[j+1]=t;
	}
	cin>>w;
	for(int i=1;i<=n;i++)if(w>=a[i])
        	{rec=a[i];j=i;break;}
	int l=0;
	if(j!=w)
	for(int i=n;i>=j;i--){
		if(a[i]+l<rec){
			sum++;
			l+=a[i];
		}
		else if(l+a[i]==rec){
               sum++;
               l+=a[i];
               break;
            }
	}
	else sum=1;
	cout<<sum;
	return 0;
}

2022/8/2 15:41
加载中...