Codeforces Round 997 (Div. 2)

news/2025/1/18 0:38:37/文章来源:https://www.cnblogs.com/maburb/p/18677876

A. Shape Perimeter

题意:一个\(m \times m\)的印章每次往右上方向移动,问盖出来的图形周长。

假设每次都能盖\(m \times m\)的格子,那么看每两次盖章有多重复的减去就行。第\(i\)次移动了\(x_i, y_i\),那么就会有一个\(m-x_i, m-y_i\)的矩形被重复覆盖,减去它的周长。

点击查看代码
void solve() {int n, m;std::cin >> n >> m;std::vector<int> x(n), y(n);for (int i = 0; i < n; ++ i) {std::cin >> x[i] >> y[i];}i64 ans = m * 4 * n;for (int i = 1; i < n; ++ i) {ans -= (m - x[i] + m - y[i]) * 2;}std::cout << ans << "\n";
}

B. Find the Permutation

题意:有一个排列,给你一个矩阵表示\(y\)是否在\(x\)后面\((y>x)\), 求出这个排列。

对于每一对\(xy\),我们都可以知道谁在前面,前面的向后面连边,那么没入度的点就是第一个,依次推出其他点的位置。用拓扑排序即可。

点击查看代码
void solve() {int n;std::cin >> n;std::vector<std::string> s(n);for (int i = 0; i < n; ++ i) {std::cin >> s[i];}std::vector<std::vector<int> > adj(n);std::vector<int> in(n);for (int i = 0; i < n; ++ i) {for (int j = i + 1; j < n; ++ j) {if (s[i][j] == '1') {adj[i].push_back(j);++ in[j];} else {adj[j].push_back(i);++ in[i];}}}std::queue<int> q;std::vector<int> ans;for (int i = 0; i < n; ++ i) {if (in[i] == 0) {q.push(i);}}while (q.size()) {int u = q.front(); q.pop();ans.push_back(u);for (auto & v : adj[u]) {if ( -- in[v] == 0) {q.push(v);}}}for (auto & x : ans) {std::cout << x + 1 << " \n"[x == ans.back()];}
}

C. Palindromic Subsequences

题意:构造一个数组使得长度最长的最长回文子序列数量最多。

如果我们填\(1\)~\(n-3\),后面三个填1,2,3。你们发现会有\(3(n-4)\)个最长回文子序列。当\(n\)大于6的时候满足\(3(n-4) > n\)\(n\)等于6我直接抄的样例。

点击查看代码
void solve() {int n;std::cin >> n;if (n == 6) {std::cout << 1 << " " << 1 << " " << 2 << " " << 3 << " " << 1 << " " << 2 << "\n";return;}int m = n - 3;for (int i = 1, x = 0; i <= n; ++ i) {std::cout << x + 1 << " \n"[i == n];x = (x + 1) % m;}
}

D. Unique Median

不会。坐了两个小时牢
待补

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/871040.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

引用 EAGLE/EAGLE2 的文章汇总

引用 EAGLE/EAGLE2 的文章汇总这张图是 eagle 和 previous approaches 的加速效果对比。 引用 eagle 的文章也可以被分成很多类,它们引用 eagle/eagle2 的侧重点也很多样。有不少文章是把 eagle 和 eagle2 作为 speculative decoding 的示例,这种不再在这里列出了。有些文章我…

【Kali工具】一款聚合暴力破解工具 Kraken

本文为大家分析一款聚合密码破解工具。集成了常见的破解类型,上手也比较简单,一起来看看吧。 在Kali中安装在Kali或者在其他Linux系统中,我们执行下面命令进行安装。 git clone https://github.com/jasonxtn/kraken.git cd Kraken pip install -r requirements.txt #运行 py…

G1原理—10.如何优化G1中的FGC

大纲 1.G1的FGC可以优化的点 2.一个bug导致的FGC(Kafka发送重试 + subList导致List越来越大) 3.为什么G1的FGC比ParNew + CMS要更严重 4.FGC的一些参数及优化思路1.G1的FGC可以优化的点 (1)FGC的基本原理 (2)遇到FGC应该怎么处理 (3)应该如何操作来规避FGC (4)应该如何操作来加…

firefox浏览器deepin20.9下缩放异常

地址栏输入about:config,修改layout.css.devPixelsPerPx默认1.25,改为1.0就可以了。 deepin版本: 20.9 社区版 firefox版本: 115.18.0esr (64 位) 修改前改参数修改后

【内网攻防】WMI的利用

# 红队 # 红蓝对抗 # 内网攻防 WMI简介 WMI,全称Windows Management Instrumentation,是微软开发的一种用于管理Windows系统的工具。你可以把它想象成一个数据库工具,它存储了关于你的电脑的各种信息,比如系统、应用程序、网络和设备等。 WMI使用了一种特殊的方式来表示这…

【后门】cymothoa后门的利用

# 后门工具 # 红队 cymothoa简介: Cymothoa是一款隐秘的后门工具,通过向目标主机上活跃的进程注入恶意代码来执行后门工作,这也反向说明了,实际上Cymothoa后门会拥有和原进程相同的权限,且Cymothoa是通过向系统进程注入shellcode去执行后门,所以不会像以前写过的许多后门…

Linux 符号链接

Linux中的符号链接是一种特殊类型的文件,允许用户创建指向其他文件或目录的链接,便于访问和管理文件系统。创建和删除符号链接很简单,使用ln -s命令可以创建链接,而unlink和rm命令可用于删除它。用户还可以通过命令查找和处理失效的符号链接,以维护文件系统的整洁。在Linu…

在 Linux 中查看符号链接指向

在 Linux 系统中,可以通过使用 readlink、realpath 和 ls -la 命令来查看符号链接指向的目标文件或目录,选择不同命令可以满足不同的路径解析需求。在 Linux 系统中,符号链接(symbolic link)是一种特殊类型的文件,它指向另一个文件或目录。为了查看符号链接指向的目标文件…

Office 365 E5 账号申请及永久续期教程

详细介绍了如何申请微软提供的Office 365 E5管理账号、使用该账号的基本功能以及实现账号的永久续期方法,强调通过Github Action等自动化手段可以简化续期过程。续订成功通知Office 365 E5 是微软 免费 提供给开发者的 Office 临时 管理号,任何人均可申请。该账号的最大权益便…

【Windows攻防】恶意软件容器化

# windows 微软在2022年7月为了帮助用户保持安全,在Office中默认阻止了internet宏。 阻止从Internet下载的文档中的VBA宏。 接下来我们来了解一下MOTW标记,其实就是网络标记。 什么是MOTW标记? MOTW全名Mark of the Web,他是windows操作系统中的一个安全特性,为了帮助用户…

【Spring Cloud Alibaba AI】 入门与实践

一、概述 Spring AI 是 Spring 官方社区项目,旨在简化 Java AI 应用程序开发,让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。可参考文章《SpringAI:Java 开发的智能新利器》Spring Cloud Alibaba AI 是一个将 Spring Cloud 微服务生态与阿里巴巴 AI 能力无缝集…

Re:Re:笑死

哈哈哈哈哈博客用的很熟练嘛 闲的没事去桃花湖那边开了一圈 下午的旅程后劲儿太大了 开车的时候仿佛眼前还都是山 今晚自己和猫猫独享大床真爽啊!!吼吼 再次给你欣赏一下12的美照哈哈哈哈哈哈