CF1956C Nene's Magical Matrix

被这题送走了,纪念一下。

巧妙的构造题,考虑比较方便处理的方案,假设我们从左上角的顶点开始涂,每次涂一个 \(1,2,3\dots n\) 的排列。其余方案可以通过这种方案交换数字顺序得到,所以只考虑这种方案。

考虑分析总和最大时矩阵的性质。显然,最内圈最大为 \(1\),最外圈最大为 \(n\)。最后的矩阵必然是这个形式:

\[\begin{bmatrix}1&2&\dots&n\\2&2&\dots&n\\\dots&\dots&\dots&n\\n&n&n&n&\\\end{bmatrix}
\]

接下来,我们考虑构造一种方案得到这个矩阵。我们只需要从外圈到内圈,纵横交错着涂。这样,每一圈不符合要求的数字就会被覆盖,达到这种情况。

操作数量刚好是 \(2n\)。

#include <bits/stdc++.h>
using namespace std;
long long t,n,op[2200],p[2200],s[610][610];
int main()
{
scanf("%lld",&t);
while(t--)
{
long long ans=0,cnt=0;
scanf("%lld",&n);
for(int i=n;i>=1;i--)
{
op[++cnt]=1,p[cnt]=i;
op[++cnt]=2,p[cnt]=i;
for(int j=1;j<=n;j++)s[i][j]=j,s[j][i]=j;
}
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
ans+=s[i][j];
printf("%lld %lld\n",ans,cnt);
for(int i=1;i<=cnt;i++)
{
printf("%lld %lld ",op[i],p[i]);
for(long long j=1;j<=n;j++)printf("%lld ",j);
printf("\n");
}
}
return 0;
}

CF1956C Nene's Magical Matrix 题解的更多相关文章

  1. [LeetCode] 01 Matrix 题解

    题意 # 思路 我一开始的时候想的是嘴 # 实现 ```cpp // // include "../PreLoad.h" class Solution { public: /** ...

  2. CF549H:Degenerate Matrix ——题解

    https://vjudge.net/problem/CodeForces-549H ———————————————————————— 题目大意:给一个矩阵,每个数可以加任意的数使得该矩阵为退化矩阵( ...

  3. CF83A Magical Array 题解

    Content 有一个长度为 \(n\) 的序列 \(a_1,a_2,a_3,...,a_n\).定义一个"神奇数组"为在上面的序列中最大值和最小值相等的子序列.求出这个序列中&q ...

  4. CF289B Polo the Penguin and Matrix 题解

    Content 有一个 \(n\times m\) 的矩阵 \(A\),每次操作你可以将某一个元素增加或减少 \(d\),求是所有元素相等的最小操作次数,或者不存在这样的操作方案. 数据范围:\(1\ ...

  5. CF1042E Vasya and Magic Matrix 题解

    题目链接 思路分析 看到题目中 \(n,m \leq 1000\) ,故直接考虑 \(O(n^2)\) 级别做法. 我们先把所有的点按照 \(val\) 值从小到大排序,这样的话二维问题变成序列问题. ...

  6. AGC027 D - Modulo Matrix 构造

    目录 题目链接 题解 代码 题目链接 AGC027 D - Modulo Matrix 题解 从第左上角第一个点开始染色,相邻不同色,染法唯一 那么一个点的四周与他不同色,我们另这个点比四周都大,那么 ...

  7. [Leetcode Week13]Search a 2D Matrix

    Search a 2D Matrix 题解 原创文章,拒绝转载 题目来源:https://leetcode.com/problems/search-a-2d-matrix/description/ D ...

  8. HDU - 6314:Matrix (广义容斥)(占位)

    Samwell Tarly is learning to draw a magical matrix to protect himself from the White Walkers. the ma ...

  9. [Leetcode Week10]01 Matrix

    01 Matrix 题解 原创文章,拒绝转载 题目来源:https://leetcode.com/problems/01-matrix/description/ Description Given a ...

  10. CodeForces 402 E Strictly Positive Matrix

    Strictly Positive Matrix 题解: 如果原来的 a[i][j] = 0, 现要 a[i][j] = 1, 那么等于 sum{a[i][k] + a[k][j]} > 1. ...

随机推荐

  1. Model接口

    /** * Model接口 * 作用:将值存放到request对象 * * * @return */ @RequestMapping(value = "/testModle") p ...

  2. MCP协议Streamable HTTP

    一.概述 2025 年 3 月 26 日,模型上下文协议(Model Context Protocol,简称 MCP)引入了一项关键更新:用 Streamable HTTP 替代原先的 HTTP +  ...

  3. Springboot 的一些默认配置规则

    说明 本文样例说明仅适用 maven 环境和语法,但所述内容也适用 gradle 原文地址:https://www.cnblogs.com/qnlcy/p/15905544.html 一.日志 1. ...

  4. java处理http请求之Apache httpClient入门教程

    说明 本文示例代码基于 4.5.13 版本 转载请注明出处:https://www.cnblogs.com/qnlcy/p/15378446.html 一.项目介绍 Apache 提供用来做http请 ...

  5. Python 常用魔法方法(下)

    Python 常用魔法方法(下) 回顾 魔法方法是 Python 内置方法, 不需要我们手动调用, 它存在的目的是给 解释器 调用的. 比如我们在写 "1 + 1 " 的时候, 这 ...

  6. ASP.NET Core Minimal API之optional route parameter with default value and optional route parameter

    public static void Main(string[] args) { var builder = WebApplication.CreateBuilder(args); var app = ...

  7. VirtualBox 导入/注册 虚拟机文件 .vbox 失败

    VirtualBox 导入/注册 虚拟机文件 .vbox 失败 问题情景 Error: Failed to open virtual machine located in <.vbox所在目录& ...

  8. Spring 注解之 @EnableTransactionManagement:Spring Boot 事务配置

    Spring Boot 开启声明式事务支持 所有的数据访问技术都有事务处理机制,这些技术提供了API用来开启事务.提交事务以完成数据操纵,或者在发生错误的时候回滚数据.Spring支持声明式事务,这是 ...

  9. CommonsBeanutils链与无commons collections的shiro反序列化利用

    CommonsBeanutils链与无commons collections的shiro反序列化利用 在cc2中,我们知道可以在commons-collections4通过java.util.Comp ...

  10. Caddy自编译

    转载自我的个人博客:Caddy自编译 配置 Golang 环境 需要先配置 Golang 环境:Download and install - The Go Programming Language w ...