Advertisement
Guest User

Untitled

a guest
Feb 20th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.35 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <cctype>
  4. #include <cstring>
  5. #include <cstdio>
  6. #include <cmath>
  7. #include <algorithm>
  8. #include <vector>
  9. #include <string>
  10. #include <sstream>
  11. #include <map>
  12. #include <set>
  13. #include <queue>
  14. #include <stack>
  15. #include <fstream>
  16. #include <numeric>
  17. #include <iomanip>
  18. #include <bitset>
  19. #include <list>
  20. #include <stdexcept>
  21. #include <functional>
  22. #include <utility>
  23. #include <ctime>
  24.  
  25.  
  26. typedef long double ld;
  27. typedef long long ll;
  28. using namespace std;
  29. const ll MX=1e6+9;
  30. const int MAXN = 10100;
  31. const ld pi = acos(-1);
  32. const ll mod = 1e9+7;
  33.  
  34. //bool cmp ( int a,int b ) { return a>b; }
  35. ll vl;
  36. ll po ( ll a , ll b )
  37. {
  38. if ( b==0 ) { return 1; }
  39. ll x = po ( a , b/2 );
  40. x *= x;
  41. if ( b%2 ) { x*=a; }
  42. return x;
  43. }
  44. int power(int p)
  45. {
  46. if(p==0)return 1;
  47. if(p==1)return vl;
  48. if(p%2)return (vl*power(p-1))%mod;
  49. long long x=power(p/2);
  50. return (x*x)%mod;
  51. }
  52. int mod_inv(ll a,ll b)
  53. {
  54. vl=b;
  55. return (a*power(mod-2))%mod;
  56. }
  57. ll gcd ( ll a , ll b )
  58. {
  59. if ( b==0 ) return a;
  60. else { return gcd( b , a%b ); }
  61. }
  62.  
  63. bool cmp ( int a , int b ) { return (a>b); }
  64. int dx[]={ 0 , 0 , -1 , 1 };
  65. int dy[]={ 1 , -1 , 0 , 0 };
  66.  
  67. int a[MX];
  68. int b[MX];
  69. int main()
  70. {
  71. ll n,k,x;
  72. cin>>n>>k>>x;
  73.  
  74. for ( int i=0 ; i<n ; i++ )
  75. {
  76. scanf ( "%d" , &a[i] );
  77. b[i] = a[i];
  78. }
  79. int q=2;
  80.  
  81.  
  82.  
  83. sort ( a , a+n );
  84. for ( int i=0 ; i<n ; i++ )
  85. {
  86. if ( !(i&1) ) { a[i] ^= x; }
  87. //cout<<a[i]<<" ";
  88. }
  89. //cout<<endl;
  90.  
  91. while ( q-- )
  92. {
  93. sort ( b , b+n );
  94. for ( int i=0 ; i<n ; i++ )
  95. {
  96. if ( !(i&1) ) { b[i] ^= x; }
  97. //cout<<a[i]<<" ";
  98. }
  99. }
  100. ll mn =1e18;
  101. ll mx = -1e18;
  102.  
  103. if ( k%2 )
  104. {
  105. for ( int i=0 ; i<n ; i++ )
  106. {
  107.  
  108.  
  109. mn = min ( mn , ll(a[i]) );
  110. mx = max( mx , ll(a[i]) );
  111. }
  112. cout<<mx<<" "<<mn; return 0;
  113. }
  114. else
  115. {
  116. for ( int i=0 ; i<n ; i++ )
  117. {
  118. mn = min ( mn , ll(b[i]) );
  119. mx = max( mx , ll(b[i]) );
  120. }
  121. cout<<mx<<" "<<mn; return 0;
  122. }
  123.  
  124.  
  125. return 0;
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement