NOIP2007 T2纪念品分组 解题报告-S.B.S.

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
int ss,n,d[10001],sum=0;  
int main()
{      
    int i,y; 
    bool c=false;
    cin>>ss>>n;
    for(i=0;i<n;i++) 
        cin>>d[i];  
    sort(d,d+n);   
    for(i=0;i<n;i++)
    {  
        for(c=false,y=n-1;y>i;y--) 
            if(d[y]<=ss-d[i])
            {
                c=true;
                break;
            }  
        if(c==true)
        {
            sum+=n-y;
            n=y;
        }
        else
        {
            sum+=n-i;
            break;
        }   
    }
    cout<<sum;   
    return 0;  
} 
原文地址:https://www.cnblogs.com/AwesomeOrion/p/5287074.html