Codeforces Round 877 (Div. 2) ABCD
A. Blackboard List
solve:
1、生成的数一定不是负数,所以有负数的情况下,负数一定是原来的数。
2、没有负数的情况下,最大的数一定是原来的数,因为操作只能使数变小。
void solve()
{cin>>n;for(int i=0;i<n;i++)cin>>b[i];sort(b,b+n);if(b[0]<0){cout<<b[0]<<'\n';}else cout<<b[n-1]<<'\n';
}
B. Minimize Permutation Subarrays
1、在1和2的中间插n,这样使得子区间的排列只存在1本身及1-n的(整个区间)排列。
void solve()
{cin>>n;int pos1=0,pos2=0,pos3=0,posn=0;for(int i=1;i<=n;i++){cin>>b[i];if(b[i]==1)pos1=i;if(b[i]==2)pos2=i;if(b[i]==n)posn=i;}if((pos1<posn&&posn<pos2)||(pos2<posn&&posn<pos1)){cout<<pos1<<" "<<pos2<<'\n';}else if(posn<min(pos1,pos2)){cout<<posn<<" "<<min(pos1,pos2)<<"\n";}else if(posn>max(pos1,pos2)){cout<<posn<<" "<<max(pos1,pos2)<<'\n';}//在1和2之间插进一个n
}
C. No Prime Differences
1、n,m存在偶数的情况下,可以直接按顺序排。
形如:
4 5
1 5 9 13 17
2 6 10 14 18
3 7 11 15 19
4 8 12 16 205 4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
17 18 19 20
2、n、m全为奇数。可以把先按顺序排,再把前n/2行 分别 插空放在剩下n/2+1行的 两行之间。
形如:
5 7
15 16 17 18 19 20 21
1 2 3 4 5 6 7
22 23 24 25 26 27 28
8 9 10 11 12 13 14
29 30 31 32 33 34 35
//把1所在的行以及8所在的行 分别插在 15与22所在行之间,及22与29所在行之间。
ll x[1005][1005];
void solve()
{cin>>n>>m;ll cnt=1;if(n%2==0){for(int j=1;j<=m;j++)for(int i=1;i<=n;i++)x[i][j]=cnt++;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)cout<<x[i][j]<<" \n"[j==m];}else if(m%2==0){for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)x[i][j]=cnt++;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)cout<<x[i][j]<<" \n"[j==m];}else {for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)x[i][j]=cnt++;int y=n/2,z=0;for(int i=1;i<=n/2;i++){for(int j=1;j<=m;j++)cout<<x[y+i][j]<<" \n"[j==m];for(int j=1;j<=m;j++)cout<<x[z+i][j]<<" \n"[j==m];}for(int j=1;j<=m;j++)cout<<x[n][j]<<" \n"[j==m];}
}
D. Bracket Walk
先看题目规则:
给你一个长度为n的字符串,q次指定修改位置x。你现在可以从字符串第一个字符开始,左右随意走,结束的位置必须是字符串最后一个位置。问你走过形成的字符串,能不能实现括号匹配。
solve:
1、匹配情况应形如()这样此时可以直接走。
2、什么时候需要折返?一边的括号不够,需要多凑几次,以便另一方配对的情况。
3、set容器记录 可以给 另一边括号缺少的情况下 提供括号的位置坐标。
4、()形如此时,'(‘在偶数位,’)‘在 奇数位。(())这样的情况可以提供贡献,只有()不行。
5、所以,set存’(‘在奇数位,’)‘在 偶数位此时的坐标。
6、修改指定位置时,当set里若存在位置,那该位置的括号变成正确的,无法提供贡献。反之,可以提供贡献,折返可产生新的括号。
7、n为奇数时,()无法成功匹配。
8、当set里有数,且最小位置的的括号为’)‘或最大位置的括号为’('时,无法匹配。
void solve()
{cin>>n>>m>>s;set<ll>st;for(ll i=0;i<n;i++){if(i%2==1&&s[i]=='(')st.insert(i);if(i%2==0&&s[i]==')')st.insert(i);}while(m--){ll pos;cin>>pos;pos--;if(st.count(pos)!=0)st.erase(pos);else st.insert(pos);if(n&1){cout<<"NO\n";}else if(st.size()!=0&&(*st.begin()%2==0||*st.rbegin()%2==1)){//cout<<(*st.rbegin())<<"* ";cout<<"NO\n";}else cout<<"YES\n";}}
相关文章:
Codeforces Round 877 (Div. 2) ABCD
A. Blackboard List solve: 1、生成的数一定不是负数,所以有负数的情况下,负数一定是原来的数。 2、没有负数的情况下,最大的数一定是原来的数,因为操作只能使数变小。 void solve() {cin>>n;for(int i0;i<n;i)cin>&…...
easyExcel导入失败提示用户第几行有误并回滚数据
思路: 在controller定义一个map,将map传入excel监听器,在监听器中处理excel的数据,读取到某一行出现错误就将错误提示信息存入map并抛出一个异常给service。在service方法上开启事务,并将异常出实现数据回滚࿰…...
问道价值互联网,区块链的下一个十年 | 2023 开放原子全球开源峰会区块链分论坛即将启幕
随着全球 Web3 浪潮经由数字藏品、元宇宙的日渐普及而实现落地,区块链在“信息互联网”转向“价值互联网”中的重要作用正得到进一步认可。在数字经济蓬勃发展、数据成为重要生产要素的时代,区块链已不仅仅是一项技术、一种工具,更是一种思维…...
解读 Nginx 配置
tip:作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 推荐:体系化学习Java(Java面试专题) 文章目录 1、Nginx 配…...
知识变现海哥:课程定价容易出现的三大误区
哈喽,大家好,我是海哥,知识付费变现创业教练,教育公司培训总监,从事知识付费变现咨询10年,已助力3000人实现知识付费变现。 很多做知识付费的老师都有定价方面的困惑。怕定太高,卖不出去&#…...
Android开发 LogDog (日志狗)V2.0.0
目录 一、简介 二、使用推荐 1、初始化LogDog 2、运行中如何更改初始化时的配置? 三、更改 四、新功能 1、Log过滤 2、自定义打印 3、提供占位符式打印 一、简介 LogDog V1.0 版本https://blog.csdn.net/Ym_quiet/article/details/130453232?spm1001.2014…...
JavaScript break
在JavaScript中,break语句用于提前退出或终止循环或switch语句。它允许您立即停止循环或switch的执行,并继续执行后面的代码。 以下是在循环中使用break的示例: javascript for (var i 0; i < 10; i) { if (i 5) { break; // 当…...
linux服务器使用curl命令处理常用es查询
目录 场景: 结果格式化显示: 验证服务启动: 单个参数变量查询: 分页查询: 日期范围查询: must中单个参数条件查询 must中多个参数条件查询 使用filter过滤查询 使用sort过滤查询 总结: 场景…...
Office Visio 2013安装
哈喽,大家好。今天一起学习的是Visio 2013的安装,这是一个绘制流程图的软件,用有效的绘图表达信息,比任何文字都更加形象和直观。Office Visio 是office软件系列中负责绘制流程图和示意图的软件,便于IT和商务人员就复杂…...
C++ 私有析构函数的作用
如果一个类的析构函数声明为私有(private),其他对象或函数将无法直接调用析构函数。这意味着如果你尝试使用delete操作符删除该类的对象,将会导致编译错误,因为析构函数是不可访问的。 将析构函数声明为私有是一种防止…...
【C++】deque的用法
目录 一、容器适配器二、deque的介绍三、deque的使用及缺陷1、deque的构造函数2、deque的元素访问接口3、deque的 iterator的使用4、deque的增删查改4、deque的缺陷5、为什么选择deque作为stack和queue的底层默认容器 一、容器适配器 在了解deque前,我们先讲一讲什…...
Live800:智能客服有哪些未来发展趋势?
智能客服,也称智能问答系统,是一种利用机器学习、自然语言处理等技术实现自主询问、自主应答、自主维护的自动化系统。它们可以通过文字形式,为用户提供个性化、一对一的服务,避免了人工客服的人力成本和等待时间。 未来ÿ…...
【一】Java SE 基础
文章目录 一、初始Java1.1 什么是Java1.2 Java的特点1.3 第一个Java程序 二、数据类型与变量2.1 基本数据类型2.2 基本数据类型对应的包装类2.3 变量2.4 类型转换2.5 字符串类型及其与数字之间的转换 三、运算符3.1 算术运算符3.2 赋值运算符3.3 关系运算符3.4 逻辑运算符3.5 位…...
Linux防火墙学习笔记2
iptables是什么? 1)iptables 不是防火墙,是防火墙用户代理。 2)用于把用户的安全设置添加到“安全框架”中。 3)“安全框架”是防火墙。 4)安全框架的名称是netfilter。 5)netfilter位于内…...
Linux下MongDB定时备份方案
1. 安装crontabs 首先安装crontabs yum install crontabs 2. 创建备份目录 [rootlocalhost data]# mkdir -p /data/backup/mongo/mongodb_bak_tmp [rootlocalhost data]# mkdir -p /data/backup/mongo/mongodb_bak_path 3. 创建MongoDB备份shell脚本 有密码: …...
长尾词挖掘,长尾词的优化方法有哪些
我们都知道,长尾词能给我们带来较高的流量和转化率,且优化难度低,成本低。今天就来分享长尾词的优化方法。 首先需要挖掘长尾词,挖掘长尾词的方法以下3种比较实用: 1、使用长尾词挖掘工具 可以通过第三方工…...
JUC基础-0601
6 多线程锁 6.1 锁的八个问题演示 class Phone {public static synchronized void sendSMS() throws Exception {//停留4秒TimeUnit.SECONDS.sleep(4);System.out.println("------sendSMS");}public synchronized void sendEmail() throws Exception {System.out.p…...
bash特性
bash bash是一个命令处理器,运行在文本窗口zh哦那个,执行用户输入的命令。 1、bash特性–历史命令 保留用户的历史执行的命令,可以使用history查看之前执行过的命令 #通过$HISTORY查看保存的命令条数 echo $HISTORY #存放用户执行的历史…...
[Flink] Flink On Yarn(yarn-session.sh)启动错误
在Flink上启动 yarn-session.sh时出现 The number of requested virtual cores for application master 1 exceeds the maximum number of virtual cores 0 available in the Yarn Cluster.错误。 版本说明: Hadoop: 3.3.4 Flink:1.17.1 问题…...
玩转css逐帧动画,努力成为更优质的Ikun~
🎉 一、前言 css3的animation想必大家都知道吧,那 steps 逐帧动画你知道吗?对于我来说,实际工作及练习中也很少用到这种跳跃式变化的动画,而它start和end的解释又比较“不说人话”,以前用到steps动画的时候…...
从零开始!Vue3+SpringBoot前后端分离项目Docker部署实战(上):环境搭建与数据库容器化
📝 前言 最近我刚完成了一个“校园后勤维修工单管理系统”的全栈开发。项目采用了目前最主流的 技术栈:前端 Vue3 Vite,后端 Spring Boot MyBatis-Plus,数据库 MySQL 8.0。 随着项目顺利跑通,如何把这套系统优雅、稳…...
每天五分钟,跟学pytorch_day3:构建和训练图像分类器
目标:给模型输入一张纯色的图片,模型识别并输出其颜色 一、数据准备: 这里我们将使用经典的 CIFAR10 数据集,它包含 10 个类别的彩色图像,每个类别有 6000 张图像,图像大小为 32x32 像素。 ①使用 torch…...
用Python+Transformer打造AI心理咨询助手:FastAPI与Streamlit全栈开发指南
用PythonTransformer构建智能心理对话系统:从模型微调到Web部署全流程 在当今快节奏的社会中,心理健康问题日益受到重视。一个能够提供即时情感支持的AI系统,可以成为传统心理咨询的有益补充。本文将带您从零开始,使用最先进的Tra…...
LTE Cat1 技术详细介绍
目录 概述 1 核心技术规范 2 发展历程 3 核心技术特点 3.1 速率与功能平衡 3.2 成本优势显著 3.3 功耗优化合理 3.4 网络兼容性强 4 与其他物联网通信技术对比 5 典型应用场景 6 LTE Cat1 模组与产业生态 7 总结与未来展望 概述 LTE Cat1(Long Term Ev…...
别再死记硬背正负号!用Python可视化理解第二类曲面积分的‘方向’(附Matplotlib代码)
用Python动态可视化破解第二类曲面积分的正负号之谜 当你在草稿纸上反复推演第二类曲面积分的正负号规则时,是否曾幻想过能"看见"那些抽象的法向量方向?本文将通过Python的Matplotlib库,带你走进三维可视化世界,用动态图…...
云容笔谈·东方红颜影像生成系统重装系统后快速恢复部署:镜像与数据备份指南
云容笔谈东方红颜影像生成系统重装系统后快速恢复部署:镜像与数据备份指南 重装服务器系统,对很多运维同学来说,就像给电脑重装Windows一样,是件既常规又让人有点紧张的事。常规是因为系统用久了,难免需要清理或升级&…...
保姆级教程:用Protel99SE从抄板PCB中精准导出SMT贴片坐标(附Excel整理技巧)
从抄板PCB到SMT贴片:Protel99SE坐标导出与Excel数据清洗全流程解析 在硬件设计与生产衔接的关键环节中,PCB抄板后的文件处理往往是最容易被忽视却至关重要的步骤。当工程师拿到一份通过反向工程获得的DDB文件时,如何准确提取元件坐标并转换为…...
Lychee-Rerank API安全加固:认证、限流与防滥用策略实施
Lychee-Rerank API安全加固:认证、限流与防滥用策略实施 最近在部署Lychee-Rerank服务时,我发现很多开发者只关注了模型本身的排序效果,却忽略了API接口的安全防护。这其实挺危险的——想象一下,你的排序服务突然被恶意请求灌满&…...
ssm+java2026年毕设师生疫情上报管理系统【源码+论文】
本系统(程序源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容进度安排:2023年8月23日-2023年9月18日 与指导老师进行沟通,确认选题并提交题目进行审核2023年9月19日-2023年10月…...
Ubuntu18.04下Gerrit2.15.22安装全攻略:从零配置到开机自启动
Ubuntu 18.04下Gerrit 2.15.22深度部署指南:全流程详解与生产级优化 在代码协作开发领域,Gerrit作为一款开源的代码审查工具,已经成为许多技术团队提升代码质量的核心基础设施。本文将带您完成从零开始在生产环境中部署Gerrit 2.15.22的全过程…...
