301188: CF222B. Cosmic Tables
Memory Limit:256 MB
Time Limit:3 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Cosmic Tables
题意翻译
## 题目描述 给定一个 $n\times m$ 的矩阵与 $k$ 次操作,每次操作有以下三种类别: - 交换第 $x_i$ 列与第 $y_i$ 列; - 交换第 $x_i$ 行与第 $y_i$ 行; - 查询位于第 $x_i$ 行第 $y_i$ 列的数。 ## 输入格式 输入的第一行有三个整数 $n,m,k$ ( $1\le n,m\le 10^3$ , $1\le k\le 10^5$),分别表示该矩阵的行数、列数与操作个数。 接下来 $k$ 行,每行输入一个字符 $s_i$ ( $s_i$ 只会是 "c","r","g" 中的一个 ) 与两个整数 $x_i,y_i$ ( $1\le x_i\le n,y_i\le m$ )。 - 若 $s_i$ 为 "c",则交换第 $x_i$ 列与第 $y_i$ 列 ( 保证 $x_i \ne y_i$ ); - 若 $s_i$ 为 "r",则交换第 $x_i$ 行与第 $y_i$ 行 ( 保证 $x_i \ne y_i$ ); - 若 $s_i$ 为 "g",则查询此时位于第 $x_i$ 行第 $y_i$ 列的数。 ## 输出格式 对于每个 $s_i=$ "g",输出查询的结果。 Translated by $\operatorname{Rosmarinus}$.题目描述
The Free Meteor Association (FMA) has got a problem: as meteors are moving, the Universal Cosmic Descriptive Humorous Program (UCDHP) needs to add a special module that would analyze this movement. UCDHP stores some secret information about meteors as an $ n×m $ table with integers in its cells. The order of meteors in the Universe is changing. That's why the main UCDHP module receives the following queries: - The query to swap two table rows; - The query to swap two table columns; - The query to obtain a secret number in a particular table cell. As the main UCDHP module is critical, writing the functional of working with the table has been commissioned to you.输入输出格式
输入格式
The first line contains three space-separated integers $ n $ , $ m $ and $ k $ ( $ 1<=n,m<=1000 $ , $ 1<=k<=500000 $ ) — the number of table columns and rows and the number of queries, correspondingly. Next $ n $ lines contain $ m $ space-separated numbers each — the initial state of the table. Each number $ p $ in the table is an integer and satisfies the inequality $ 0<=p<=10^{6} $ . Next $ k $ lines contain queries in the format " $ s_{i} $ $ x_{i} $ $ y_{i} $ ", where $ s_{i} $ is one of the characters "с", "r" or "g", and $ x_{i} $ , $ y_{i} $ are two integers. - If $ s_{i} $ = "c", then the current query is the query to swap columns with indexes $ x_{i} $ and $ y_{i} $ ( $ 1<=x,y<=m,x≠y $ ); - If $ s_{i} $ = "r", then the current query is the query to swap rows with indexes $ x_{i} $ and $ y_{i} $ ( $ 1<=x,y<=n,x≠y $ ); - If $ s_{i} $ = "g", then the current query is the query to obtain the number that located in the $ x_{i} $ -th row and in the $ y_{i} $ -th column ( $ 1<=x<=n,1<=y<=m $ ). The table rows are considered to be indexed from top to bottom from 1 to $ n $ , and the table columns — from left to right from 1 to $ m $ .
输出格式
For each query to obtain a number ( $ s_{i} $ = "g") print the required number. Print the answers to the queries in the order of the queries in the input.
输入输出样例
输入样例 #1
3 3 5
1 2 3
4 5 6
7 8 9
g 3 2
r 3 2
c 2 3
g 2 2
g 3 2
输出样例 #1
8
9
6
输入样例 #2
2 3 3
1 2 4
3 1 5
c 2 1
r 1 2
g 1 3
输出样例 #2
5