Advertisement
Guest User

Untitled

a guest
Jan 19th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. /*#define _FORTIFY_SOURCE 0
  2. #pragma GCC optimize("Ofast")
  3. #pragma GCC optimize("no-stack-protector")
  4. #pragma GCC optimize("unroll-loops")
  5. #pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx,tune=native")
  6. #pragma GCC optimize("fast-math")*/
  7. #include <iostream>
  8. #include <map>
  9. #include <set>
  10. #include <vector>
  11. #include <algorithm>
  12.  
  13. using namespace std;
  14.  
  15. const int N = 1e6;
  16.  
  17. #define int long long
  18.  
  19. string b[N];
  20. pair <int, int> a[N];
  21.  
  22. signed main()
  23. {
  24. ios_base::sync_with_stdio(0);
  25. int n, p, c;
  26. c--; p--;
  27. cin >> n >> p >> c;
  28. p = n - p;
  29. for (int i = 0; i < n; i++) {
  30. cin >> a[i].first;
  31. a[i].second = i;
  32. }
  33. sort(a, a + n);
  34. int i1 = 0;
  35. int etalon = a[p].first;
  36. for (int i = 0; i < n; i++) {
  37. if (a[i].first + c < etalon ) {
  38. b[a[i].second] = "Fail";
  39. }
  40. else {
  41. i1 = i;
  42. break;
  43. }
  44. }
  45. a[n].first = 1e17 - 1;
  46. etalon = a[i1].first + c;
  47. for (int i = i1; i < n; i++) {
  48. if (etalon > a[i].first) {
  49. b[a[i].second] = "Short";
  50.  
  51. }
  52. else {
  53. i1 = i;
  54. break;
  55. }
  56. if (i + 1 == n) {
  57. i1 = n;
  58. }
  59. }
  60. for (int i = i1; i < n; i++) {
  61. b[a[i].second] = "Pass";
  62. }
  63. for (int i = 0; i < n; i++) {
  64. cout << b[i] << "\n";
  65. }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement