Codeforces Round 889 (Div. 2) 题解
晚上睡不着就来总结一下叭~(OoO)

赛后榜(希望不要被Hack...Orz)
终榜!!!

瞬间的辉煌(呜呜呜~)

先不放图了。。怕被dalaoHack...呜呜呜~
总结
7.29半夜比赛,本来是不想打的,感觉最近做的题太多了,什么牛客杭电以及CF上的题等等等,挺杂的,也来不及整理,本想梳理一下,而且也感觉今天状态不太好,但见他们都要打,我也就跟着一起打了。。。总体来说还可以吧(目前来说。。如果明天早上不会被Hack的话。。。。祈祷Orz...保佑...)但是A题出现一点小失误,考虑问题不完整,WA了一发,不应该,而且这题用时也比较长,8分钟,脑子当时没转过来啊啊啊啊啊啊。。。附加WA一发。B题实话实说有点傻逼。。。直接猜结论,开始不敢写,因为我自己都不等说服自己。。。但是想了十分钟左右,没有其他思路,直接莽了,没想到竟然过了。不敢相信,虽然我也不知道为什么过的。。Orz...C1大模拟,有点复杂,但是还可以。后接近一个半小时都在改C2,最后也没改对,需要注意的细节太多了。。。总有考虑到的。。直到最后就这样了。。。
题解
A. Dalton the Teacher
思路:计算学生的学号和椅子的编号相同的个数ans,若是奇数则相同的个数ans/2+1,若是偶数则相同的个数ans/2即可(其实就是两个人交换,如果最后还剩下一个人再交换一次)
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#define int long long
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;typedef pair<int,int> PII;
const int N=200005;
const int inf=0x3f3f3f3f;
int a[N];signed main(){IOS;int T; cin>>T;while(T--){int n,ans=0; cin>>n;for(int i=1;i<=n;i++){int p; cin>>p;if(p==i){ans++;}}if(ans==0){cout<<0<<'\n';}else{if(ans%2){cout<<ans/2+1<<'\n';}else{cout<<ans/2<<'\n';}}}return 0;
}
B. Longest Divisors Interval
思路:用1-1000去类比1-10e18,虽然我也不知道原理是什么。。。随便猜的啊啊啊。。Orz...
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#define int long long
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;typedef pair<int,int> PII;
const int N=200005;
const int inf=0x3f3f3f3f;
int a[N];signed main(){IOS;int T; cin>>T;while(T--){int n,cnt=0,ans=-inf; cin>>n;for(int i=1;i<=1000;i++){if(n%i==0){cnt++;}else{ans=max(ans,cnt);cnt=0;}}cout<<ans<<'\n';}return 0;
}
C1. Dual (Easy Version)
思路:模拟。。分别找最大的数nmax和最小的数nmin,比较谁的绝对值更大,如果最大的数nmax的绝对值更大,从前往后遍历,如果前一个数比当前数大,后一个数加nmax(nmax不可能是负的,如果最大的是负的那么最小的也是负的,两个都是负的一定是最小的数的绝对值较大);如果最小的数nmin的绝对值更大,从后往前遍历,如果前一个数比当前数大,前一个数加nmin(nmin不可能是正的,如果最小的是正的那么最大的也是正的,两个都是正的一定是最大的数的绝对值较大),将标号如队列即可
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#define int long long
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;typedef pair<int,int> PII;
const int N=25;
const int inf=0x3f3f3f3f;
int a[N];signed main(){IOS;int T; cin>>T;while(T--){vector<PII> v;int n,nmax=-inf,dn,nmin=inf,xn,ans=0; cin>>n;for(int i=1;i<=n;i++){cin>>a[i];if(a[i]>nmax){dn=i;nmax=a[i];}if(a[i]<nmin){xn=i;nmin=a[i];}}if(abs(nmax)>abs(nmin)){for(int i=2;i<=n;i++){while(a[i]<a[i-1]){a[i]+=nmax;ans++;v.push_back({i,dn});if(a[i]>nmax){dn=i;nmax=a[i];}}}}else{for(int i=n-1;i>0;i--){while(a[i]>a[i+1]){a[i]+=nmin;ans++;v.push_back({i,xn});if(a[i]<nmin){xn=i;nmin=a[i];}}}}cout<<ans<<'\n';for(auto u:v){cout<<u.first<<' '<<u.second<<'\n';}}return 0;
}
C2. Dual (Hard Version)(待补。。)
应该是全是负数的情况没有考虑。。MLE2了,而且一想这也不是最优的。也不对。。。
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;typedef pair<int,int> PII;
const int N=25;
const int inf=0x3f3f3f3f;int a[N];
vector<PII> v;
int main(){IOS;int T; cin>>T;while(T--){v.clear();int n,ans=0; cin>>n;for(int i=0;i<n;i++){cin>>a[i];}for(int i=1;i<n;i++){if(a[i]<a[i-1]){int d=a[i-1]-a[i],zn=inf,zi;for(int j=0;j<n;j++){if(zn>=d&&a[j]<zn&&a[j]>=d){zn=a[j];zi=j;}}if(zn!=inf){v.push_back({i+1,zi+1});ans++;a[i]+=a[zi];}else{int nmax=-inf,dn;for(int j=0;j<n;j++){if(a[j]>nmax){nmax=a[j];dn=j;}}while(a[i-1]>a[i]){a[i]+=a[dn];v.push_back({i+1,dn+1});ans++;}}}}cout<<ans<<'\n';for(auto u:v){cout<<u.first<<' '<<u.second<<'\n';}}return 0;
}
Orz......
相关文章:
Codeforces Round 889 (Div. 2) 题解
晚上睡不着就来总结一下叭~(OoO) 赛后榜(希望不要被Hack...Orz) 终榜!!! 瞬间的辉煌(呜呜呜~) 先不放图了。。怕被dalaoHack...呜呜呜~ 总结 7.29半夜比赛,本来是不想打的,感觉最近做的题太多…...
系统学习Linux-MySQL用户权限管理(三)
一、用户权限管理概述 数据库用户权限管理是数据库系统中非常重要的一个方面,它用于控制不同用户访问和操作数据库的权限范围。数据库用户权限管理可以保护敏感数据和数据库结构,确保只有被授权的用户才可以操作和使用数据库,防止数据被修改…...
【雕爷学编程】MicroPython动手做(02)——尝试搭建K210开发板的IDE环境4
7、使用串口工具 (1)连接硬件 连接 Type C 线, 一端电脑一端开发板 查看设备是否已经正确识别: 在 Windows 下可以打开设备管理器来查看 如果没有发现设备, 需要确认有没有装驱动以及接触是否良好 (2&a…...
阿里云NVIDIA A100 GPU云服务器性能详解及租用费用
阿里云GPU服务器租用费用表包括包年包月、一个小时收费以及学生GPU服务器租用费用,阿里云GPU计算卡包括NVIDIA V100计算卡、T4计算卡、A10计算卡和A100计算卡,GPU云服务器gn6i可享受3折,阿里云百科分享阿里云GPU服务器租用表、GPU一个小时多少…...
数字身份、分布式存储、跨链技术等将如何推动Web3数据的发展?
Web3数据是基于区块链技术、去中心化、可信任的数据,具有较高的安全性和可信度。随着Web3.0时代的到来,Web3数据将会在金融、物联网、医疗、教育、政务等领域发挥重要的作用。其中,数字身份、分布式存储、跨链技术等将会是Web3数据发展的重要…...
Ubuntu 新增2T 硬盘,配置自动挂载
Ubuntu 台式机内存太小了,增加了一块 2T 的硬盘,记录下配置过程: 查看硬盘信息 可以看出,我电脑当前有三块硬盘: (1) /dev/nvme0n1 系统盘,256 G,分了两个区 /dev/nvme0n…...
Windows下安装HBase
Windows下安装HBase 一、HBase简介二、HBase下载安装包三、环境准备3.1、 JDK的安装3.2、 Hadoop的安装 四、HBase安装4.1、压缩包解压为文件夹4.2、配置环境变量4.3、%HBASE_HOME%目录下新建临时文件夹4.4、修改配置文件 hbase-env.cmd4.4.1、配置JAVA环境4.4.2、set HBASE_MA…...
在家构建您的迷你 ChatGPT
这篇文章分为三个部分;他们是: 什么是指令遵循模型?如何查找遵循模型的指令构建一个简单的聊天机器人废话不多说直接开始吧!!! 什么是指令遵循模型? 语言模型是机器学习模型,可以根…...
Cisco IOS操作(红茶三杯CCNA)
Cisco路由器组件 CPU:执行指令RAM:断电内容丢失 运行操作系统运行配置文件IP路由表ARP缓存数据包缓存区 ROM:保存开机自检软件,存储路由器的启动引导程序 bootstrap指令基本的自检软件迷你版IOS 非易失RAM(NVRAM&#…...
在Linux中用strsignal函数输出对各种信号的描述
2023年7月29日,周六上午 目录 函数原型Linux有多少种信号使用示例 函数原型 #include <string.h>char* strsignal(int signum);strsignal函数接受一个整数参数signum,表示信号的编号。 用于把信号编号转换成一个简短的对这个信号编号的描述。 L…...
分布式文件存储与数据缓存 Redis高可用分布式实践(上)
一、Reids概述 1.1 为什么要使用NoSQL 单机Mysql的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是静态网页,动态交互类型的网站不多。 遇到问题: 随着用户数的…...
chatglm2外挂知识库问答的简单实现
一、背景 大语言模型应用未来一定是开发热点,现在一个比较成功的应用是外挂知识库。相比chatgpt这个知识库比较庞大,效果比较好的接口。外挂知识库大模型的方式可以在不损失太多效果的条件下获得数据安全。 二、原理 现在比较流行的一个方案是langcha…...
从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router、抽取全局配置文件】
从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router】 本期主要完成对Server的搭建、封装连接与业务绑定、实现基础Router(处理业务的部分)、抽取框架的全局配置文件 从配置文件中读取数据(服务器监听端口、监听IP等&a…...
建设银行秋招指南,备考技巧和考试内容详解
建设银行秋招简介 银行作为非常吃香的岗位,每年都有不少同学通过投递简历,进入笔试,再到面试成功,成功到银行就职,也有相当一部分同学因为信息差,符合条件却没有报名。无法进入银行工作。 建设银行的秋招…...
Cilium 系列-7-Cilium 的 NodePort 实现从 SNAT 改为 DSR
系列文章 Cilium 系列文章 前言 将 Kubernetes 的 CNI 从其他组件切换为 Cilium, 已经可以有效地提升网络的性能。但是通过对 Cilium 不同模式的切换/功能的启用,可以进一步提升 Cilium 的网络性能。具体调优项包括不限于: 启用本地路由 (Native Rou…...
React的hooks---useReducer
useReducer 作为 useState 的代替方案,在某些场景下使用更加适合,例如 state 逻辑较复杂且包含多个子值,或者下一个 state 依赖于之前的 state 等。 使用 useReducer 还能给那些会触发深更新的组件做性能优化,因为父组件可以向自…...
自然语言处理从入门到应用——LangChain:模型(Models)-[文本嵌入模型Ⅱ]
分类目录:《自然语言处理从入门到应用》总目录 本文将介绍如何在LangChain中使用Embedding类。Embedding类是一种与嵌入交互的类。有很多嵌入提供商,如:OpenAI、Cohere、Hugging Face等,这个类旨在为所有这些提供一个标准接口。 …...
Olap BI工具对比
背景 目前公司主要使用数据存储有MySQL、ES、Hive、HBase、TiDB等 MySQL用于存储应用的基本支撑数据,数据量少;ES和Hbase用于存储和查询调用记录,数据量多;Hive和TiDB用于DC上使用,数据量多。主要使用的数据分析平台…...
【iOS】Cocoapods的安装以及使用
文章目录 前言一、Cocoapods的作用二、安装Cocoapods三、使用Cocoapods总结 前言 最近笔者在仿写天气预报App时用到了api调用数据,一般的基本数据类型我们用Xcode中自带的框架就可以转换得到。但是在和风天气api中的图标的格式为svg格式。 似乎iOS13之后Xcode中可…...
OpenCvSharp (C# OpenCV) 二维码畸变矫正--基于透视变换(附源码)
导读 本文主要介绍如何使用OpenCvSharp中的透视变换来实现二维码的畸变矫正。 由于CSDN文章中贴二维码会导致显示失败,大家可以直接点下面链接查看图片: C# OpenCV实现二维码畸变矫正--基于透视变换 (详细步骤 + 代码) 实现步骤 讲解实现步骤之前先看下效果(左边是原图,右边…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论
路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...
基于IDIG-GAN的小样本电机轴承故障诊断
目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) 梯度归一化(Gradient Normalization) (2) 判别器梯度间隙正则化(Discriminator Gradient Gap Regularization) (3) 自注意力机制(Self-Attention) 3. 完整损失函数 二…...
