逆推手牌
#include <iostream>
#include <deque>
#include <vector>
using namespace std;
class Solution {
public:
vector<int> rollback(vector<int> &nums) {
deque<int> res;
for (int i = nums.size() - 1; i >= 0; --i) {
res.push_front(nums[i]);
if (i == 0) break;
const auto b = res.back();
res.pop_back();
res.push_front(b);
}
return vector<int>(res.begin(), res.end());
}
};
int main() {
vector<int> nums = {1, 3, 5, 4, 2};
Solution sol;
for (const auto i : sol.rollback(nums)) cout << i << ", ";
}Last updated