1. 程式人生 > >天天寫演算法之Assignments

天天寫演算法之Assignments

我正在做凸包問題,結果忽然出現了一個貪心-。-|||一開始沒都明白題目,以為會有多餘的學生,想到了揹包,emmm,後來發現0.0
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <cstring>
#define MAX 1007

using namespace std;

int n,t;
int a[MAX],b[MAX];

int cmp ( int a , int b )
{
    return a > b;
}

int main ( )
{
    while ( ~scanf ( "%d%d" , &n , &t ) )
    {
        for ( int i = 0 ; i < n ; i++ )
            scanf ( "%d" , &a[i] );
        for ( int i = 0 ; i < n ; i++ )
            scanf ( "%d" , &b[i] );
        sort ( a , a+n );
        sort ( b , b+n , cmp );
        int sum = 0;
        for ( int i = 0 ; i < n ; i++ )
            if ( a[i] + b[i] > t )
                sum += a[i] + b[i] - t;
        printf ( "%d\n" , sum );
    }
}
驚不驚喜?意不意外?