codeforces #317 div2 A. Arrays (水)

A. Arrays
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

You are given two arrays A and B consisting of integers, sorted in non-decreasing order. Check whether it is possible to choose knumbers in array A and choose m numbers in array B so that any number chosen in the first array is strictly less than any number chosen in the second array.

Input

The first line contains two integers nA, nB (1 ≤ nA, nB ≤ 105), separated by a space — the sizes of arrays A and B, correspondingly.

The second line contains two integers k and m (1 ≤ k ≤ nA, 1 ≤ m ≤ nB), separated by a space.

The third line contains nA numbers a1, a2, ... anA ( - 109 ≤ a1 ≤ a2 ≤ ... ≤ anA ≤ 109), separated by spaces — elements of array A.

The fourth line contains nB integers b1, b2, ... bnB ( - 109 ≤ b1 ≤ b2 ≤ ... ≤ bnB ≤ 109), separated by spaces — elements of array B.

Output

Print "YES" (without the quotes), if you can choose k numbers in array A and m numbers in array B so that any number chosen in array Awas strictly less than any number chosen in array B. Otherwise, print "NO" (without the quotes).

Sample test(s)
input
3 3
2 1
1 2 3
3 4 5
output
YES
input
3 3
3 3
1 2 3
3 4 5
output
NO
input
5 2
3 1
1 1 1 1 1
2 2
output
YES
Note

In the first sample test you can, for example, choose numbers 1 and 2 from array A and number 3 from array B (1 < 3 and 2 < 3).

In the second sample test the only way to choose k elements in the first array and m elements in the second one is to choose all numbers in both arrays, but then not all the numbers chosen in A will be less than all the numbers chosen in B.

 应该3分钟过的题。。。

结果花了8分钟。。。ssssad

 1 /*************************************************************************
 2     > File Name: code/cf/#317/A.cpp
 3     > Author: 111qqz
 4     > Email: rkz2013@126.com 
 5     > Created Time: 2015年08月23日 星期日 00时29分47秒
 6  ************************************************************************/
 7 
 8 #include<iostream>
 9 #include<iomanip>
10 #include<cstdio>
11 #include<algorithm>
12 #include<cmath>
13 #include<cstring>
14 #include<string>
15 #include<map>
16 #include<set>
17 #include<queue>
18 #include<vector>
19 #include<stack>
20 #include<cctype>
21 #define y1 hust111qqz
22 #define yn hez111qqz
23 #define j1 cute111qqz
24 #define ms(a,x) memset(a,x,sizeof(a))
25 #define lr dying111qqz
26 using namespace std;
27 #define For(i, n) for (int i=0;i<int(n);++i)  
28 typedef long long LL;
29 typedef double DB;
30 const int inf = 0x3f3f3f3f;
31 const int N=1E5+7;
32 int na,nb,k,m;
33 int a[N],b[N];
34 int main()
35 {
36   #ifndef  ONLINE_JUDGE 
37     freopen("in.txt","r",stdin); 
38   #endif
39     cin>>na>>nb;
40     cin>>k>>m;
41     for ( int i = 1 ; i <= na ; i++){
42     scanf("%d",&a[i]);
43     }
44     for ( int i  = 1 ; i<= nb ; i++){
45     scanf("%d",&b[i]);
46     }
47     if (a[k]<b[nb-m+1]){
48     puts("YES");
49     }
50     else
51     {
52     puts("NO");
53     }
54   
55   
56  #ifndef ONLINE_JUDGE  
57   fclose(stdin);
58   #endif
59     return 0;
60 }
View Code
原文地址:https://www.cnblogs.com/111qqz/p/4752657.html