2 solutions

  • 0
    @ 2025-11-16 10:23:52
    #include<bits/stdc++.h>
    using namespace std;
    const int N=30010;
    int n,m;
    int w[N]; 
    int main()
    {
    	cin>>m>>n;
    	for(int i=1;i<=n;i++)
    	{
    		cin>>w[i];
    	} 
    	sort(w+1,w+n+1);
    	int res=0;
    	for(int j=n,i=1;i<=j;j--)
    	{
    		if(w[i]+w[j]<=m)
    		{
    			i++;	
    		}	
    		res++;
    	}
    	cout<<res;
    	return 0;
    }
    • -1
      @ 2026-1-25 14:31:13
      #include<bits/stdc++.h>
      using namespace std;
      int n,m,w[30010],res=0;
      int main(){
      	cin>>n>>m;
      	for(int i=1;i<=n;i++) cin>>w[i]; 
      	sort(w+1,w+n+1);
      	for(int j=n,i=1;i<=j;j--){
      		if(w[i]+w[j]<=m) i++;
      		res++;
      	}
      	cout<<res;
      	return 0;
      }
      
      • 1

      Information

      ID
      252
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      5
      Tags
      # Submissions
      44
      Accepted
      17
      Uploaded By