首页 > 其他分享 >CF1458C 题解

CF1458C 题解

时间:2022-12-09 09:57:53浏览次数:64  
标签:le 题解 矩阵 CF1458C 每行 IC 位为

题意

传送门

\(T\) 组测试数据,每次给一个 \(n\times n\) 的矩阵,每行每列都是个 \(1\to n\) 的排列。有 \(m\) 次操作,如果是 UDLR 就是要把整个矩阵每行/每列往一个方向循环移动一格。如果是 IC,就是把矩阵每行/每列变成原来的逆排列。求最后的矩阵。

数据范围:\(1\le T\le 1000\),\(1\le \sum n\le 1000\),\(1\le \sum m\le 10^5\),\(1\le a_{i,j}\le n\)。

题解

最近的思维质量真是不行啊……看完题解觉得很简单,但为什么想不到呢……

首先如果没有 IC 是很简单的,维护位移即可。接着思考包含 IC 的一些简单情况。

如果只有 LRI,也就是单独考虑每行。如果第 \(i\) 位为 \(a_i\),R 后第 \(i+1\) 位为 \(a_i\),I 后第 \(a_i\) 位为 \(i\)。发现我们可以用一个二元组 \((i,a_i)\) 表示这个过程,即给一元加减,和交换两元。容易发现对于任意初始值,操作是一样的。于是可以保证复杂度。

于是答案就显而易见了:用三元组 \((i,j,a_{i,j})\),每次操作都是给一元加减或交换两元。正确性易证。

标签:le,题解,矩阵,CF1458C,每行,IC,位为
From: https://www.cnblogs.com/FishJokes/p/16968112.html

相关文章

  • 当远程设备或者计算机不接受连接 问题解决
    远程设备或计算机不接受连接问题解决tmd一大中午打开电脑发现没网手机却有网给电脑连上热点也不行真tmd晦气解决方法这三个东西都勾选取消 ......
  • CF1218G Alpha planetary system 题解
    Part1设\(w_x\)表示点\(x\)的权值\(\bmod3\),\(c_x\)表示\(x\)的所属集合编号(\(c_x\in\{0,1,2\}\)),\(v_i\)表示第\(i\)条边的权值。一个直接的想法是使所有......
  • undefined reference to vtable for问题解决(QT)
    主要在运行时出现原因是在自定义类使用信号与槽,在创建文件时,未继承QObject类并且没有添加Q_OBJECT;解决:在需要的类中,添加Q_OBJECT,继承QObject类。然后使用QTCreator工......
  • labelme 安装使用及常见问题解决
    (目录)写在前面,本文为作者本人在学习使用labelme过程中遇到的各种问题,记录于此,希望对其他同学有所帮助。1.labelme安装labelme是麻省理工(MIT)的计算机科学和人工智能实验......
  • ARC145~152 题解
    比赛标号从大到小排列.因为博主比较菜所以没有题解的题都是博主不会做的/youlARC144以前的比赛懒得写了.目录AtCoderRegularContest152B.PassonPathC.PivotD......
  • Team them up!题解
    Teamthemup!题面你的任务是按照以下要求将一些人员划分到两个队伍中。每个人都属于其中的一个队伍。每个队伍至少包含一个人。每个人都认识几个人,而同一个队伍中的......
  • .NET 6 中外部引用项目NU1105异常问题解决
    .NET6Project中,添加了其他解决方案的工程后,本地能编译通过,代码签入后,其他同事下载代码,编译报错:错误NU1105找不到“E:\Teld\01Code\TTP_CTP\_git\TTP_CTP_NET6\Src\Fr......
  • Pycharm cannot set up a python SDK问题解决方法
    xcrun:error:invalidactivedeveloperpath(/Library/Developer/CommandLineTools),missingxcrun...解决方法:打开终端输入xcode-select--install回车后,系统......
  • POM net.sf.json-lib:json-lib报错问题解决
    在配置项目的Jackson的时候,需要添加依赖<dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><......
  • Python——问题解决:matplotlib.pyplot绘制函数中文乱码
    代码frompylabimportmpl#中文库mpl.rcParams['font.sans-serif']=['SimHei']mpl.rcParams['axes.unicode_minus']=False例子plt.title("三次样条插值11点")plt.pl......