fork download
  1.  
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4.  
  5. inline void fast() {
  6. ios_base::sync_with_stdio(0);
  7. cin.tie(0);
  8. cout.tie(0);
  9. }
  10.  
  11. //void ans(int n, int k) {
  12. //// 1 3 5 7 9 11 , 2 4 6 8 10
  13. //// 1 3 5 7 9 , 2 4 6 8 10
  14. //
  15. // vector<int> odd;
  16. // vector<int> even;
  17. //
  18. // if(n%2==0) {
  19. // if (k<=(n/2)){
  20. // for(int i=1; i<=n; i+=2) {
  21. // odd.push_back(i);
  22. // }
  23. // cout << odd[k-1] << endl;
  24. // }
  25. // else {
  26. // for(int i=2; i<=n; i+=2) {
  27. // even.push_back(i);
  28. // }
  29. // k-=(n/2);
  30. // cout << even[k-1] << endl;
  31. // }
  32. // }
  33. // else {
  34. // if (k<=((n/2)+1)){
  35. // for(int i=1; i<=n; i+=2) {
  36. // odd.push_back(i);
  37. // }
  38. // cout << odd[k-1] << endl;
  39. // }
  40. // else {
  41. // for(int i=2; i<=n; i+=2) {
  42. // even.push_back(i);
  43. // }
  44. // k-=((n/2)+1);
  45. // cout << even[k-1] << endl;
  46. // }
  47. // }
  48. //}
  49.  
  50. int main() {
  51. fast();
  52.  
  53. long long n, k; cin >> n >> k;
  54. //odd=(2*k)-1, even=2*k;
  55.  
  56. if(n%2==0) {
  57. if (k<=(n/2)){
  58. cout << (2*k)-1 << endl;
  59. }
  60. else {
  61. k-=(n/2);
  62. cout << 2*k << endl;
  63. }
  64. }
  65. else {
  66. if (k<=((n/2)+1)){
  67. cout << (2*k)-1 << endl;
  68. }
  69. else {
  70. k-=((n/2)+1);
  71. cout << 2*k << endl;
  72. }
  73. }
  74. //ans(n, k);
  75.  
  76. return 0;
  77. }
  78.  
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
187245885482976