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 里界面切换,一般都是选项卡了。切换不同选项…...
AI绘画作品集:Anything V5图像生成服务实际效果与案例分享
AI绘画作品集:Anything V5图像生成服务实际效果与案例分享 1. 引言:当AI绘画遇见Anything V5 想象一下,你有一个创意在脑海中盘旋——也许是一个穿着宇航服在咖啡馆里喝咖啡的熊猫,或者是一座漂浮在云端的蒸汽朋克城市。在过去&…...
Python 直驱打印机:从字体精调到标签排版,实战避坑指南
1. 为什么选择Python直驱打印机? 很多开发者第一次听说用Python直接控制打印机时都会觉得不可思议——毕竟我们习惯了通过Word、PDF等中间软件来打印文档。但当你需要批量生成标签贴、定制化报表或者自动化打印任务时,传统方式的弊端就暴露无遗ÿ…...
mbed OS USB串口缓冲库:线程安全环形缓冲设计
1. 项目概述buffered-serial0是一个专为 ARM mbed OS 平台设计的轻量级串口缓冲封装库,其核心目标是为 mbed 平台默认的主 USB 虚拟串口(即UART0,在 mbed 中通常映射为Serial pc(USBTX, USBRX))提供可靠、线程安全、零拷贝倾向的底…...
CentOS7下CDP7.1.1集群部署全攻略:从系统调优到MySQL配置避坑指南
CentOS7企业级CDP7.1.1集群深度部署指南:系统调优与MySQL高可用实战 开篇:企业级大数据平台的基石构建 当数据量突破TB级门槛时,一个经过深度优化的集群环境直接决定了数据分析的效率和稳定性。我曾亲历过某金融客户由于透明大页未关闭导致集…...
obsidian-skills高级搜索技巧:快速找到需要的功能
obsidian-skills高级搜索技巧:快速找到需要的功能 【免费下载链接】obsidian-skills Agent skills for Obsidian. Teach your agent to use Markdown, Bases, JSON Canvas, and use the CLI. 项目地址: https://gitcode.com/GitHub_Trending/ob/obsidian-skills …...
seo网上教程有哪些常见错误
SEO网上教程有哪些常见错误 在互联网时代,SEO(搜索引擎优化)已经成为网站流量和排名提升的关键因素。很多人在学习SEO过程中,常常会遇到一些误区,甚至在网上找到的一些教程中也包含了不少错误。本文将详细介绍一些常见…...
华为2288X V5服务器RAID配置实战:为iMaster NCE-CampusInsight单机部署打好地基
华为2288X V5服务器RAID配置全攻略:从硬件准备到iMaster NCE-CampusInsight部署 当企业级网络分析平台iMaster NCE-CampusInsight遇上华为2288X V5服务器,硬件配置的合理性直接决定了后续系统运行的稳定性与数据安全性。作为部署流程中的首个技术攻坚点&…...
告别命令行!用C#和FFMpegCore给你的视频批量加水印和转码
用C#和FFMpegCore打造企业级视频处理流水线 每次看到团队里的小伙伴手动用FFmpeg命令行处理上百个视频文件时,我都忍不住想——这简直是在浪费生命。作为经历过这种痛苦的技术负责人,我深知自动化视频处理对于内容团队的重要性。今天,我将分享…...
Java集成LibreOffice实现高效Office文档批量转PDF方案
1. 为什么选择LibreOffice进行文档转换 在企业日常办公中,我们经常需要处理大量的Office文档。想象一下这样的场景:财务部门每月要生成上百份报表,人力资源部门要处理大量简历,而市场部门则需要频繁修改和分享各种方案文档。这些文…...
5 分钟搭建智能终端:自动补全 + 历史建议 + 语法高亮,效率拉满
文章目录 📖 介绍 📖 🏡 演示环境 🏡 📒 终端优化指南:补全、提示与高亮一步到位 📒 📝 实现效果与核心能力 📝 Windows 平台完整配置步骤 📝 Linux 平台完整配置步骤 📝 macOS(苹果)平台配置步骤 📝 各平台效果说明 ⚓️ 相关链接 ⚓️ 📖 介绍 �…...
