题目链接:http://codeforces.com/contest/298/problem/D
题意:
有两个人,第一个人抓了n条鱼,第二个人抓了m条鱼

保证编号小的一定小于等于编号大的质量

问你第一个人的n条鱼质量之和,有没有可能比第二个人的m条鱼的质量之和大

解法:

直接从大到小排序就好了,然后扫一遍。

只要存在一条鱼,a[i]>b[i],那么就说明可以。

因为我此时只要让后面的鱼全部都为0千克就好了

那么前面的让他们相等w[a[i]] = w[b[i]]显然就可以了。

//CF 298D

#include <bits/stdc++.h>
using namespace std;
const int maxn = 100010;
int a[maxn], b[maxn];

int main()
{
    int n, m, k;
    scanf("%d%d%d", &n, &m, &k);
    for(int i = 1; i <= n; i++) scanf("%d", &a[i]);
    for(int i = 1; i <= m; i++) scanf("%d", &b[i]);
    sort(a+1, a+n+1, greater<int>());
    sort(b+1, b+m+1, greater<int>());
    for(int i = 1; i <= n; i++){
        if(a[i] > b[i]){
            puts("YES");
            return 0;
        }
    }
    puts("NO");
    return 0;
}