1 solutions

  • 0
    @ 2024-12-11 0:25:36

    C++ :

    #include<iostream>
    #include<cstdlib>
    #include<algorithm>
    using namespace std;
    int main()
    {
    	int w,n,a[30001],number=0,sheng=0;
    	cin>>w>>n;
    	for(int i=1;i<=n;++i)
    	  cin>>a[i];
    	sort(a+1,a+n+1);
    	int s=0,h=n+1;
    	while(1)
         {
    		s++;
    		h--;
    		if(a[s]+a[h]<=w)
    		  number++;
    		if(a[s]+a[h]>w)
             {
    			--s;
    			number++;
             }
             if(s==h)
    		   break;
    		 if(s>h)
              {
    				number--;
    				break;
              }
         }
         cout<<number;
    	 //system("pause");
    	 return 0;
    }
    

    Pascal :

    var
       w,n,i,x,ans:longint;
       a:array[0..100000]of longint;
    procedure qsort(l,r:longint);
    var
       i,j,t,mid:longint;
    begin
     i:=l;j:=r;
     mid:=a[(i+j)div 2];
     while i<=j do
      begin
       while a[i]>mid do inc(i);
       while a[j]<mid do dec(j);
       if i<=j then
        begin
         t:=a[i];a[i]:=a[j];a[j]:=t;
         inc(i);dec(j);
        end;
      end;
     if l<j then qsort(l,j);
     if i<r then qsort(i,r);
    end;
    begin
     readln(w);
     readln(n);
     for i:=1 to n do readln(a[i]);
     qsort(1,n);
     x:=n;
     ans:=0;
     for i:=1 to n do
      begin
       if i>x then break;
       if a[i]+a[x]<=w then begin inc(ans);dec(x);end
       else inc(ans);
      end;
     writeln(ans);
    end.
    

    Java :

    import java.util.Arrays;
    import java.util.Scanner;
    
    public class Main {
    	
    	public static void main(String[] args) {
    		Scanner in = new Scanner(System.in);
    		int max = in.nextInt();
    		int n = in.nextInt(), count = 0, l = 0, r = n-1;
    		int[] number = new int[n];
    		for ( int i = 0; i < number.length; i++ ) number[i] = in.nextInt();
    		Arrays.sort(number);
    		while ( l <= r ) {
    			if ( number[l] + number[r] <= max ) l++;
    			r--;
    			count++;
    		}
    		System.out.println(count);
    	}
    	
    }
    
    • 1

    Information

    ID
    696
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By