2023牛客第八场补题报告A H J K
2023牛客第八场补题报告A H J K
A-Alive Fossils_2023牛客暑期多校训练营8 (nowcoder.com)
思路
统计字符串,取出现次数为t的。
代码
#include <bits/stdc++.h>
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)
#define fi first
#define sc secondusing namespace std;
const int INF = 0x3f3f3f3f3f3f3f3f;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int, int> PII;
int n;
int a[N];map<string, int> mp;
void solve() {cin >> n;while (n--) {string s;cin >> s;mp[s]++;}
}signed main() {IOS;int t = 1;cin >> t;for (int i = 1; i <= t; i++) {solve();}set<string> res;for (auto [i, j] : mp) {if (j == t) res.insert(i);}cout << res.size() << "\n";for (auto i : res) cout << i << "\n";
}
H-Insert 1, Insert 2, Insert 3, …_2023牛客暑期多校训练营8 (nowcoder.com)
思路
注意到其实确定了最左边和最右边,其间的区间都可以作为右端点,所以就是需要找到每次最远的右端点,用栈一层层维护。
代码
#include <bits/stdc++.h>
using namespace std;
#define int long long
void solve();
signed main(){cin.sync_with_stdio(0);cin.tie(0);int T = 1;//cin >> T;while(T--){solve();}return 0;
}#define N 1001000
vector<int> q, stk[N];
int ban[N], a[N];
void solve(){int n;cin >> n;for(int i = 1;i <= n;i++){cin >> a[i];}q.push_back(n + 1);int ans = 0;for(int i = n;i >= 1;i--){if(stk[a[i] + 1].size()){ban[stk[a[i] + 1].back()] = 1;stk[a[i] + 1].pop_back();}if(a[i] > 1){q.push_back(i);stk[a[i]].push_back(i);}while(ban[q.back()] == 1)q.pop_back();ans += q.back() - i;}cout << ans << "\n";
}
J-Permutation and Primes_2023牛客暑期多校训练营8 (nowcoder.com)
思路
直接考虑枚举,我的想法是考虑3的等差数列,然后考虑三个等差数列中间怎样衔接,最终枚举得出答案。
代码
#include <bits/stdc++.h>
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)
#define fi first
#define sc secondusing namespace std;
const int INF = 0x3f3f3f3f3f3f3f3f;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int, int> PII;
int n;
int a[N];bool check(int m) {for (int i = 2; i * i <= m; i++) {if (m % i == 0) return 0;}return 1;
}void solve() {cin >> n;vector<int> res;if (n % 3 == 2) {// 5 2单独考虑if (n == 5) {cout << "5 2 1 4 3\n";return;}if (n == 2) {cout << "1 2\n";return;}res.push_back(n - 2);res.push_back(n - 5);for (int i = n; i > 0; i -= 3) res.push_back(i);for (int i = 1; i <= n; i += 3) res.push_back(i);for (int i = n - 8; i > 0; i -= 3) res.push_back(i);for (auto i : res) cout << i << " ";cout << "\n";} else if (n % 3 == 1) {// n - 1 n - 4??(2 1 0)//(n - 2)%3 == 2if (n == 1) {cout << 1 << "\n";return;}if (n == 4) {cout << "4 1 2 3\n";return;}if (n == 7) {cout << "1 2 3 4 7 6 5\n";return;}if (n == 10) {cout << "1 2 3 4 7 6 5 8 9 10\n";return;}res.push_back(n - 2);res.push_back(n - 5);res.push_back(n - 8);res.push_back(n - 1);res.push_back(n - 4);res.push_back(n - 11);for (int i = n - 14; i > 0; i -= 3) res.push_back(i);for (int i = 1; i <= n; i += 3) res.push_back(i);for (int i = n - 7; i > 0; i -= 3) res.push_back(i);for (auto i : res) cout << i << " ";cout << "\n";} else {// n-1%3==2// n n-3 n-6// 3 6if (n == 3) {cout << "1 2 3\n";return;}if (n == 6) {cout << "6 5 2 1 4 3\n";return;}res.push_back(n);res.push_back(n - 3);res.push_back(n - 6);for (int i = n - 1; i > 0; i -= 3) res.push_back(i);for (int i = 1; i <= n; i += 3) res.push_back(i);for (int i = n - 9; i > 0; i -= 3) res.push_back(i);for (auto i : res) cout << i << " ";cout << "\n";}
}signed main() {IOS;int t = 1;cin >> t;for (int i = 1; i <= t; i++) {solve();}
}
K-Scheming Furry_2023牛客暑期多校训练营8 (nowcoder.com)
思路
很容易发现其实在n,m都不等于2时答案只可能是fox和平局,然后再分别讨论n,m分别为2和同时为2的时候答案即可。
代码
#include <bits/stdc++.h>
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)
#define fi first
#define sc secondusing namespace std;
const int INF = 0x3f3f3f3f3f3f3f3f;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int, int> PII;
int n, m;
int a[N];int mp[500][500];
int tmp[500][500];
void solve() {cin >> n >> m;bool ok = 0;for (int i = 1; i <= n; i++) {int l = INF, r = -INF;for (int j = 1; j <= m; j++) {cin >> mp[i][j];l = min(mp[i][j], l);r = max(mp[i][j], r);}if (r - l + 1 != m) ok = 1;}if (!ok) {if (n == 2 || m == 2) {if (n == 2 && m == 2) {// cout << "***";for (int i = 1; i <= n; i++) {int l = INF;for (int j = 1; j <= m; j++) {l = min(l, mp[i][j]);}for (int j = 1; j <= m; j++) {tmp[i][j] = mp[i][j] - l;}}for (int i = 1; i <= m; i++) {for (int j = 2; j <= n; j++) {if (tmp[j][i] != tmp[1][i]) {cout << "NSFW\n";return;}}}// 2 1// 4 3if (mp[1][1] == 2 && mp[1][2] == 1 && mp[2][1] == 4 && mp[2][2] == 3) {cout << "FOX\n";return;}// 3 4// 1 2if (mp[1][1] == 3 && mp[1][2] == 4 && mp[2][1] == 1 && mp[2][2] == 2) {cout << "FOX\n";return;}// 4 3// 2 1if (mp[1][1] == 4 && mp[1][2] == 3 && mp[2][1] == 2 && mp[2][2] == 1) {cout << "CAT\n";return;}} else {if (n == 2) {for (int i = 1; i <= n; i++) {int l = INF;for (int j = 1; j <= m; j++) {l = min(l, mp[i][j]);}for (int j = 1; j <= m; j++) {tmp[i][j] = mp[i][j] - l;}}for (int i = 1; i <= m; i++) {for (int j = 2; j <= n; j++) {if (tmp[j][i] != tmp[1][i]) {cout << "NSFW\n";return;}}}if(is_sorted(tmp[1]+1,tmp[1]+m+1)) {cout<<"FOX\n";return;}int cnt = 0;for (int j = 1; j <= m; j++) {for (int k = j + 1; k <= m; k++) {if (mp[1][j] > mp[1][k]) cnt++;}}if (mp[1][1] > mp[2][1]) cnt++;//cout<<cnt<<"\n";if (cnt % 2 == 0)cout << "CAT\n";elsecout << "NSFW\n";return;} else if (m == 2) {for (int i = 1; i <= n; i++) {int l = INF;for (int j = 1; j <= m; j++) {l = min(l, mp[i][j]);}for (int j = 1; j <= m; j++) {tmp[i][j] = mp[i][j] - l;}}for (int i = 1; i <= m; i++) {for (int j = 2; j <= n; j++) {if (tmp[j][i] != tmp[1][i]) {cout << "NSFW\n";return;}}}int cnt = 0;for (int j = 1; j <= n; j++) {for (int k = j + 1; k <= n; k++) {if (mp[j][1] > mp[k][1]) cnt++;}}if (mp[1][1] > mp[1][2]) cnt++;if (cnt % 2 == 1)cout << "FOX\n";elsecout << "NSFW\n";return;}}} else {for (int i = 1; i <= n; i++) {int l = INF;for (int j = 1; j <= m; j++) {l = min(l, mp[i][j]);}for (int j = 1; j <= m; j++) {tmp[i][j] = mp[i][j] - l;}}for (int i = 1; i <= m; i++) {for (int j = 2; j <= n; j++) {if (tmp[j][i] != tmp[1][i]) {cout << "NSFW\n";return;}}}int cnt = 0;if(is_sorted(mp[1]+1,mp[1]+m+1)) {for (int i = 1; i <= n; i++) {if (mp[i][1] != 1 + (i - 1)*m) cnt++;}if (cnt == 2) {cout << "FOX\n";return;} else {cout << "NSFW\n";return;}} else {cout << "NSFW\n";return;}}} else {cout << "NSFW\n";return;}
}signed main() {IOS;int t = 1;cin >> t;for (int i = 1; i <= t; i++) {solve();}
}
相关文章:
2023牛客第八场补题报告A H J K
2023牛客第八场补题报告A H J K A-Alive Fossils_2023牛客暑期多校训练营8 (nowcoder.com) 思路 统计字符串,取出现次数为t的。 代码 #include <bits/stdc.h> #define int long long #define endl \n #define IOS ios::sync_with_stdio(0), cin.tie(0), …...
KubeSphere 部署 Zookeeper 实战教程
前言 知识点 定级:入门级如何利用 AI 助手辅助运维工作单节点 Zookeeper 安装部署集群模式 Zookeeper 安装部署开源应用选型思想 实战服务器配置(架构 1:1 复刻小规模生产环境,配置略有不同) 主机名IPCPU内存系统盘数据盘用途ks-master-0192.168.9.9…...
麦肯锡重磅发布2023年15项技术趋势,生成式AI首次入选,选对了就是风口
两位朋友在不同群里分享了同一份深度报告。 一位是LH美女,她在“AIGC时代”群里上传了这份文档,响应寥寥,可能是因为这些报告没有像八卦文那样容易带来冲击。 你看韩彬的这篇《金融妲己:基金公司女销售的瓜,一个比一个…...
【软件工程质量】代码质量管理平台Sonar
分析代码质量的工具有挺多的,比如:Alibaba Java Coding Guidelines plugin、QAPlug、SonarQube 等,平时用的比较多的事Alibaba Java Coding Guidelines plugin和sonarlint。 SonarQube 是一个用于管理源码质量的平台,帮助开发者…...
【EI/SCOPUS检索】第三届计算机视觉、应用与算法国际学术会议(CVAA 2023)
第三届计算机视觉、应用与算法国际学术会议(CVAA 2023) The 3rd International Conference on Computer Vision, Application and Algorithm 2023年第三届计算机视觉、应用与算法国际学术会议(CVAA 2023)主要围绕计算机视觉、计算机应用、计…...
crm客户管理系统的功能有哪些?
阅读本文,您可以了解:1、CRM客户管理系统的定义;2、CRM客户管理系统的功能。 CRM客户管理系统是一个工具或软件,能够帮助企业更好地与客户进行沟通、理解客户需求,以及有效地处理客户信息和互动。通俗地说,…...
leetcode 面试题 02.05 链表求和
⭐️ 题目描述 🌟 leetcode链接:面试题 02.05 链表求和 ps: 首先定义一个头尾指针 head 、tail,这里的 tail 是方便我们尾插,每次不需要遍历找尾,由于这些数是反向存在的,所以我们直接加起来若…...
培训报名小程序-用户注册
目录 1 创建数据源2 注册用户3 判断用户是否注册4 完整代码总结 我们的培训报名小程序,用户每次打开时都需要填写个人信息才可以报名,如果用户多次报名课程,每次都需要填写个人信息,比较麻烦。 本篇我们就优化一下功能,…...
java八股文之基本语法
目录 注释有几种形式 1.注释有几种形式 单行注释: 通常用于 解释 代码内某单行得作用 多行注释:通常用于接收某个方法得作用文档注释:通常用于生成 Java 开发文档。 标识符和关键字得区别 标识符:由字母,…...
java不支持发行版本5
这篇文章主要给大家介绍了关于如何解决java错误:不支持发行版本5的相关资料,发行版本5是Java5,已经是十多年前的版本了,现在已经不再被支持,需要的朋友可以参考下 − 目录 问题描述:解决方法:永久解决方法:总结 问题描述: 在i…...
旧版本docker未及时更新,导致更新/etc/docker/daemon.json配置文件出现docker重启失败
一、背景 安装完docker和containerd之后,尝试重启docker的时候,报错如下: systemctl restart dockerJob for docker.service failed because the control process exited with error code. See “systemctl status docker.service” and “…...
HTML 语言简介
1.概述 HTML 是网页使用的语言,定义了网页的结构和内容。浏览器访问网站,其实就是从服务器下载 HTML 代码,然后渲染出网页。 HTML 的全名是“超文本标记语言”(HyperText Markup Language),上个世纪90年代…...
免费网站客服机器人来了(基于有限状态机),快来体验下
免费网站客服机器人来了,快来体验下 51jiqiren.cn 五分钟就可以完成一个简单的机器人. 懂json的同学可以自定义状态和状态跳转,完成复杂的业务流程. 更多功能还在开发中. 网站右下角点"联系客服"截图: 弹出来了: 后端管理界面: 有限状态机界面: 数据界面: 在网站…...
基于Spring Boot的高校在线考试系统的设计与实现(Java+spring boot+VUE+MySQL)
获取源码或者论文请私信博主 演示视频: 基于Spring Boot的高校在线考试系统的设计与实现(Javaspring bootVUEMySQL) 使用技术: 前端:html css javascript jQuery ajax thymeleaf 微信小程序 后端:Java s…...
vscode里面报:‘xxx‘ is assigned a value but never used.解决办法
const setCurPage: React.Dispatch<React.SetStateAction<number>> 已声明“setCurPage”,但从未读取其值。ts(6133) setCurPage is assigned a value but never used.eslinttypescript-eslint/no-unused-vars 出现这个报错是eslint导致的࿰…...
每日一题 25K个一组翻转链表
题目 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内…...
NuGet包离线安装方法
在某项情况下,我们的计算机是无法直接连接外网的,这个时候就只能用离线安装的方法了。 一、直接区NUGET.org网页下载: 二、先下载nuget.exe工具,然后用这个工具下载 把下载的nuget.exe放在任意目录下,然后在此目录用…...
网络安全 Day31-运维安全项目-容器架构下
容器架构下 6. Dockerfile6.1 Docker自动化DIY镜像之Dockerfile1) 环境准备2) 书写Dockerfile内容3) 运行Dockerfile生成镜像4) 运行容器5) 小结 6.2 案例14:Dockerfile-RUN指令1) 书写Dockerfile2) 构建镜像3) 启动容器4) 测试结果 6.3 Dockerfile指令 …...
如何给a-table增加列宽拖动功能
对于table的列宽设置 相信用过的人都知道,想要设置得很完美,几乎是不现实的,因为总有数据或长或短,那我们应该如何优化它呢?那便是让用户自行拖动列宽,从而能看全table的数据,但是对于antd-vue …...
Labview选项卡之实现被选择选项卡工作
文章目录 前言一、使用选项卡二、实现被选择选项卡工作1、需求2、分析3、实现①、前面板②、程序框图 三、效果展示四、源码自取 前言 有些时候,我们做界面,需要好多个界面切换。如果是同一个 VI 里界面切换,一般都是选项卡了。切换不同选项…...
JVM垃圾回收机制全解析
Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
【笔记】WSL 中 Rust 安装与测试完整记录
#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统:Ubuntu 24.04 LTS (WSL2)架构:x86_64 (GNU/Linux)Rust 版本:rustc 1.87.0 (2025-05-09)Cargo 版本:cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...
AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机
这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机,因为在使用过程中发现 Airsim 对外部监控相机的描述模糊,而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置,最后在源码示例中找到了,所以感…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
