2.6k2 分钟

本腊鸡没什么想法,一开始想构建个二维数组淦,但题目给的数据是,爆掉了

于是换个思路:构建两个二维数组分别记录操作及该操作的序号,对查询进行从后搜索


Description

转眼间,奥运走向了尾声。QWQ要策划一场闭幕式演出。

QWQ策划的是一个方阵表演。在表演中,运动员们将排成一个 的方阵,做出各种各样的动作。

方便起见,本题中我们用正整数来指代各种动作。初始时,运动员们都没有动作,记为动作。接下来会发生次事件:

  • QWQ选取方阵的一行 / 一列,并让这一行 / 这一列的运动员们统一做出某个动作;

  • QWQ想知道,现在位于第 行第 列的选手做的是什么动作。

QWQ还忙着其他工作。你能帮帮他,回答他的问题吗?

Input

第一行两个正整数 分别表示需要维护的矩阵的大小和操作的数量。

接下来 行,每行首先是一个字符 ,表示操作的类型。 的取值及对应的意义如下:

  • :这一行接下来两个整数 表示第 行的运动员全部做出 动作。

  • :这一行接下来两个整数 表示第 列的运动员全部做出 动作。

  • :这一行接下来两个整数 你需要回答第行第 列的运动员做了什么动作。

    Output

    对于每组询问输出一个整数表示答案。
3.5k3 分钟

Description

QwQ非常喜欢玩部落冲突,但他从来不升级城墙,所以他的城墙开始时全都是1级的。

一天QwQ心血来潮,他先把他的个城墙排成一排,然后在脑中构思好每个城墙要被升到几级。

然而QwQ发现给每个城墙升到他想要的等级,不多升也不少升并不是一件容易的事,因为部落冲突只支持每次将一段城墙升高一级。

形式化地说,你的每次操作只能选择一对满足,然后将第到第块城墙各升高一级。

由于QwQ比较懒,他需要最小化操作的次数,把墙刷到他想要的等级。(具体输出方式见输出格式)

与真实游戏不同的是,你不能调换城墙的顺序。

321 分钟

死在了c题,从15:00-18:02耗死在那,又是划水的一天。。
9261 分钟

不开long long见祖宗👀 洛谷P1226 #include <stdio.h> #define LL long long #define IN freopen("in.txt", "r", stdin) #define OUT freopen("out.txt", "w", stdout) #define scan(x) scanf("%d", &x) #define sqr(x) (x) * (x) #define f(i, a, b) for (int i &#