# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
155959 |
2019-10-02T09:14:06 Z |
Minnakhmetov |
CATS (NOI14_cats) |
C++14 |
|
76 ms |
2224 KB |
#include <bits/stdc++.h>
#define ll long long
#define all(aaa) aaa.begin(), aaa.end()
using namespace std;
struct MyStack {
vector<int> v;
int flip = 0;
void push(int x) {
v.push_back(x);
}
int pop() {
if (!v.empty()) {
int x = v.back();
v.pop_back();
return x;
}
return flip;
}
int top() {
return v.empty() ? flip : v.back();
}
void add() {
push(pop() + pop());
}
};
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int q;
cin >> q;
while (q--) {
ll x, l, n;
cin >> x >> l >> n;
ll ans = 2 * (l / (n << 1) + 1) * n;
x--;
if (x % 4 == 0 ||
x % 4 == 3)
ans ^= 1;
cout << ans << "\n";
// MyStack s1, s2;
// int counter = x;
// while (counter > 0) {
// s2.push(s1.pop());
// for (int &i : s1.v)
// i ^= 1;
// s1.flip ^= 1;
// if (s2.top() > l) {
// counter--;
// if (counter == 0)
// cout << s2.top() << "\n";
// }
// else {
// s2.push(n);
// s2.push(n);
// s2.add();
// s2.add();
// s1.push(s2.top());
// s1.push(s2.top());
// s2.pop();
// s2.pop();
// }
// }
// cout << "\n";
// MyStack s1, s2;
// int counter = x, j = 0, gg = 0;
// while (counter > 0) {
// s2.push(s1.pop());
// for (int &i : s1.v)
// i ^= 1;
// s1.flip ^= 1;
// // cout << "s1 : ";
// // for (int x : s1.v) {
// // cout << x / n << "n";
// // if (x % 2)
// // cout << "^1";
// // cout << ", ";
// // }
// // cout << "\n";
// // cout << "T2 = ";
// int x = s2.v.back();
// cout << x / n << "\n";
// // if (x % 2)
// // cout << "^1";
// if (s2.top() > l) {
// counter--;
// // if (counter == 0)
// // cout << s2.top() << "\n";
// }
// else {
// s2.push(n);
// s2.push(n);
// s2.add();
// s2.add();
// s1.push(s2.top());
// s1.push(s2.top());
// s2.pop();
// s2.pop();
// }
// }
// COUNTER = X
// WHILE COUNTER > 0
// S2 PUSH T1 //Push the top element of S1 onto S2
// S1 POP //Pop the top element of S1
// FLIP LAST BINARY BIT OF ALL NUMBERS IN S1
// IF T2 > L
// COUNTER = COUNTER - 1
// IF COUNTER == 0 PRINT T2
// ELSE
// S2 PUSH N
// S2 PUSH N
// S2 ADD
// S2 ADD
// S1 PUSH T2
// S1 PUSH T2
// S2 POP
// S2 POP
}
return 0;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Incorrect |
2 ms |
376 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
376 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
376 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
3 ms |
376 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
7 ms |
376 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
76 ms |
2224 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |