8 条题解

  • 0
    @ 2023-10-21 19:49:24
    > #include<iostream>
    using namespace std;
    int main(){
        int s;
        cin>>s;
        while(s--){
             int w,n;//承重 人数 
             cin>>w>>n;
             int a[n+1];
             for(int i=0;i<n;i++){
                cin>>a[i];//输入每个人kg 
             } 
             for(int i=0;i<n;i++){//冒泡 
                for(int j=0;j<n-i-1;j++){
                    if(a[j]>a[j+1]){
                        int temp=a[j];
                        a[j]=a[j+1];
                        a[j+1]=temp;
                    }
                }
             }
             int tiaoshu=0;
             int end=n-1;       
             for(int i=0;i<=end;i++){
                if(a[i]+a[end]<=w){
                    tiaoshu++;
                    end--;
                }
                else{
                    tiaoshu++;
                    end--;
                    i--;
                }
             }cout<<tiaoshu<<endl;
        }
    }
    
    

    信息

    ID
    148
    时间
    3000ms
    内存
    128MiB
    难度
    6
    标签
    (无)
    递交数
    519
    已通过
    172
    上传者