题目链接:uva 11922 - Permutation Transformer
题目大意:给定一个序列,每次操作取出区间a~b,翻转后放到末尾,随后输出序列。
解题思路:就是伸展树,对于每个节点设一个flip,表示是否为翻转转态。每次将a旋转到根,然后分裂,再将b翻转到根,分裂,然后将mid翻转放到最后。
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
struct Node {
int val, sum, flip;
Node* cid[2];
Nod