305069: CF960D. Full Binary Tree Queries
Memory Limit:256 MB
Time Limit:4 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Full Binary Tree Queries
题意翻译
给出一颗无限层的满二叉树。 如果 $x$ 是根,孩子的值是 $2\times x$,右孩子的值是 $2\times x+1$ 。 现在有三种操作: $(1,x,k)$ :将 $x$ 所在层的所有节点整体向右循环地移动 $k$ 个单位。 $(2,x,k)$ :将 $x$ 所在的层的所有节点**及其子树**向右循环地移动 k 个单位。 $(3,x)$ :输出从 $x$ 到根的路径。 by @皎月半洒花题目描述
You have a full binary tree having infinite levels. Each node has an initial value. If a node has value $ x $ , then its left child has value $ 2·x $ and its right child has value $ 2·x+1 $ . The value of the root is $ 1 $ . You need to answer $ Q $ queries. There are $ 3 $ types of queries: 1. Cyclically shift the values of all nodes on the same level as node with value $ X $ by $ K $ units. (The values/nodes of any other level are not affected). 2. Cyclically shift the nodes on the same level as node with value $ X $ by $ K $ units. (The subtrees of these nodes will move along with them). 3. Print the value of every node encountered on the simple path from the node with value $ X $ to the root. Positive $ K $ implies right cyclic shift and negative $ K $ implies left cyclic shift. It is guaranteed that atleast one type $ 3 $ query is present.输入输出格式
输入格式
The first line contains a single integer $ Q $ ( $ 1<=Q<=10^{5} $ ). Then $ Q $ queries follow, one per line: - Queries of type $ 1 $ and $ 2 $ have the following format: $ T $ $ X $ $ K $ ( $ 1<=T<=2 $ ; $ 1<=X<=10^{18} $ ; $ 0<=|K|<=10^{18} $ ), where $ T $ is type of the query. - Queries of type $ 3 $ have the following format: $ 3 $ $ X $ ( $ 1<=X<=10^{18} $ ).
输出格式
For each query of type $ 3 $ , print the values of all nodes encountered in descending order.
输入输出样例
输入样例 #1
5
3 12
1 2 1
3 12
2 4 -1
3 8
输出样例 #1
12 6 3 1
12 6 2 1
8 4 2 1
输入样例 #2
5
3 14
1 5 -3
3 14
1 3 1
3 14
输出样例 #2
14 7 3 1
14 6 3 1
14 6 2 1