CF 1500 C

技术CF 1500 C CF 1500 CCF 1500 C
题意:
? 给你两个 \(n \times m\) 的矩阵 A,B(1 \(\leq\) n,m \(\leq\) 1500),矩阵的元素均

CF 1500 C

CF 1500 C

意思是:

?给你两个矩阵A,B(1 \(\leq\) n,m \(\leq\) 1500)的\(n \次m \),它们的元素都是[1,n]内的整数。

?对于每一个操作,可以选择一列作为每行的关键字,按照关键字从小到大的顺序对所有行进行排序,得到一个新的矩阵。这里使用的排序是稳定的,即如果两行具有相同的关键字,则按照原始矩阵中的顺序进行排序。

可以做不超过5000个操作,问能不能把A变成b,不能输出吗?1,否则输出可行的操作序列。

解决方案:

?首先,考虑到排序稳定,我们可以确定B的哪一行对应A中的最后一行(当然,如果不对应,就会是-1)

?现在考虑处理一个指示B的第I行是A的第p[i]行的数组p[i],那么我们可以发现我们最终想把p[i]放在第I个位置,并且把pos[i]设置为A的第I行的位置,也就是我们要求\ (\ for all \) POS [P [I]] POS [P [I]

?然后考虑每个列的操作。如果K列中有A(p[i],k) A(p[i 1],K),那么什么都不会发生。如果有A(p[i],k) A(p[i 1],k),那么如果操作该列,它后面必须跟一个才能做p[i]。

?于是一个图论模型自然出现了。如果一个运算X中的所有A(p[i],X)=A(p[I ^ 1],X),那么我们必须用这个运算来求贪婪,因为它不会变质,也就是说X连接到每个A的I边(p[I ^ 1],X)。X)A(p[I ^ 1],X),那么要求就是这些I在后续的操作中会被反转,也就是我会被连接到X,也就是说所有这样的I只有被解放后才能被释放。运行拓扑排序和反向输出方案。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/126075.html

(0)

相关推荐

  • 如何使用Cython为Python编写更快的C扩展

    技术如何使用Cython为Python编写更快的C扩展本篇文章为大家展示了如何使用Cython为Python编写更快的C扩展,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在我们这

    攻略 2021年10月26日
  • 证券之家,今年券商后市还有行情吗

    技术证券之家,今年券商后市还有行情吗今年券商后市一定还有行情证券之家。
    今年券商行情会在这波调整后,调整之后券商又有新的一轮行情。
    为什么可以肯定今年券商还有行情呢?主要有以下几大原因:
    第一,因为现在A股处于牛市,牛市

    生活 2021年10月21日
  • Utools工具的使用方法

    技术Utools工具的使用方法本篇文章为大家展示了Utools工具的使用方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。这几天偶然间发现了一款电脑桌面工具,其功能简直令我欣喜若

    攻略 2021年10月28日
  • rt-thread怎么修改默认的串口配置(如何打开rt-thread工程)

    技术如何进行RT-Thread中断管理本篇文章给大家分享的是有关如何进行RT-Thread中断管理,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。下面是关于R

    攻略 2021年12月17日
  • 如何进行Java语言规范线程形式的分析

    技术如何进行Java语言规范线程形式的分析如何进行Java语言规范线程形式的分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在一开始接触Java的时候我们

    攻略 2021年11月21日
  • MySQL常用拼接语句有哪些

    技术MySQL常用拼接语句有哪些这篇文章给大家分享的是有关MySQL常用拼接语句有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.拼接查询所有用户SELECT DISTINCT

    攻略 2021年10月30日