hdu Card Game

来源:互联网 发布:mac的pages怎么保存 编辑:程序博客网 时间:2024/05/10 12:34

Card Game

Soda and Beta are good friends. They are going to play a card game today. Soda has nn cards with number a1,a2,…,ana1,a2,…,an while Beta has nn cards with number b1,b2,…,bnb1,b2,…,bn.

First, they choose a number mm no larger than nn. Then they both randomly select mm cards from their own nn cards. The one with larger sum of the selected cards will win. Soda wants to know if he can always win no mater what cards will be randomly selected from him and Beta.
Input
There are multiple test cases. The first line of input contains an integer T(1≤T≤100)T(1≤T≤100), indicating the number of test cases. For each test case:

The first line contains two integer nn and mm (1≤m≤n≤500)(1≤m≤n≤500). The second line contains nn integers a1,a2,…,ana1,a2,…,an (1≤ai≤1000)(1≤ai≤1000) denoting Soda’s cards. The third line contains nn integers b1,b2,…,bnb1,b2,…,bn (1≤bi≤1000)(1≤bi≤1000) denoting Beta’s cards.
Output
For each test case, output “YES” (without the quotes) if Soda can always win, otherwise output “NO” (without the quotes) in a single line.
Sample Input
2
3 1
4 5 6
1 2 3
5 2
3 4 7 8 9
3 4 5 2 3
Sample Output
YES
NO

//这题额,水,,,给两个数组
让你判断一组数当中任意取几个数恒大于另一组

#include<stdio.h>#include<algorithm>using namespace std;int main(){    int t;    scanf("%d",&t);    while(t--)    {        int n,m;        scanf("%d%d",&n,&m);        int x[1003],y[1003];        for(int i=0;i<n;i++)        {            scanf("%d",&x[i]);        }        for(int j=0;j<n;j++)scanf("%d",&y[j]);        sort(x,x+n);        sort(y,y+n);        int sum1=0,sum2=0;        for(int i=0;i<m;i++)            sum1+=x[i];        for(int j=n-1;j>=n-m;j--)        {            sum2+=y[j];        }        if(sum1>sum2)            printf("YES\n");        else printf("NO\n");    }}
0 0
原创粉丝点击