2024.3.21|华北水利水电大学江淮校区ACM社团训练赛

2024.3.21|华北水利水电大学江淮校区ACM社团训练赛

1.数字拆解
2.矩阵修改
3.因子数
4.回文数
5.中位数

心有猛虎,细嗅蔷薇。你好朋友,这里是锅巴的C\C++学习笔记,常言道,不积跬步无以至千里,希望有朝一日我们积累的滴水可以击穿顽石。
在这里插入图片描述

数字拆解

题目
小红拿到了一个偶数,她希望你将其切割成尽可能多的偶数。你能帮帮她吗?
输入描述:
一个偶数
1≤x≤105
输出描述:
输出若干行,从小到大输出每个偶数。
示例1
输入
1024
输出
2
4
10
说明
拆分成"10"+“2”+"4"三个偶数。
示例2
输入
999999999999999999999999990
输出
999999999999999999999999990
示例3
输入
202020
输出
0
0
0
2
2
2
注意
自己看数据范围,用string吧孩子,然后还需要一个动态字符串t去切割、连接和存储,判断是不是偶数你就看这个数最末位能不能对2取余等不等于0就完了。对2取余为0的数有0,2,4,6,8。

实践代码:

bool cmp(string a,string b){if(a.size()!=b.size()) return a.size()<b.size();return a<b;
}
void solve(){string s;cin>>s;string t;vector<string> a;for(int i=0;i<s.length();i++){t+=s[i];int y=s[i]-'0';if(y%2==0) {a.push_back(t);t="";}}sort(a.begin(),a.end(),cmp);for(int i=0;i<a.size();i++) cout<<a[i]<<endl;
}

矩阵修改

题目
小红拿到了一个字符矩阵,矩阵中仅包含"red"这三种字符。
小红每次操作可以将任意字符修改为"red"这三种字符中的一种。她希望最终任意两个相邻的字母都不相同。小红想知道,至少需要修改多少个字符?
输入描述:
第一行输入两个正整数n,m,代表矩阵的行数和列数。
接下来的n行,每行输入一个长度为m的、仅由"red"这三种字符组成的字符串。
1≤n≤4
1≤m≤1000
输出描述:
一个整数,代表需要修改的字母数量的最小值。
示例1
输入
2 3
ree
dee
输出
2
说明:
修改为:
red
dre
即可。

注意
三进制状压dp。

实践代码:


因子数

题目
给出一个质数 n,请求出一个质数 m,使得 n+m 不是质数。
其中,质数是指大于 1 的自然数,除了 1 和自身外,不能被其他自然数整除的数。
输入描述:
仅输入一行,包含一个整数 n(2≤n≤2⋅105 ),保证 n 是质数。
输出描述:
仅输出一行。包含一个质数 m(2≤m≤2⋅105 ),表示答案。
如果有多个可行的答案,请输出任意一个。
可以证明,在题目所给条件下一定有解。
示例1
输入
11
输出
3

### 实践代码:
void solve(){int x;cin>>x;if(x==1) {cout<<0;return;}int cnt=0;for(int i=2;i<x/i;i++){if(x%i==0){cnt++;while(x%i==0) x/=i;//排除9=3*3这种质因子相同情况}}if(x>1) cnt++;cout<<cnt;
}

回文数

如果一段序列区间是回文的,有两种情况:
1.长度为偶数时,证明区间里的数字是一一对应的,即里面的数字0-9中的每个数的数量是偶数个。
2.长度是奇数时,证明除了中间那个数字之外的数字是一一对应的,即对于数字0-9来说里面有且仅有一个数字的数量是奇数,剩下都必须是偶数个。

题目
小红定义一个整数是“好数”,当且仅当该整数通过重排之后可以形成回文数。(可以包含前导零)
现在小红拿到了一个正整数x,小红想截取一段连续区间得到好数,她想知道有多少种不同的方案?
输入描述:
输入一个正整数1≤x≤105
输出描述:
得到“好数”的方案数。
示例1
输入
110
输出
5
说明
长度为 1 的区间,三个都是合法的。
长度为 2 的区间,"11"是合法的,"10"是不合法的。
长度为 3 的区间, "110"是合法的。

实践代码:

map<vector<int>,int> mp;
vector<int> cnt(10,0);//cnt[i] - i(0~9)这个数字出现了几次(这里只需记录奇/偶个) 1-奇数个 0-偶数个
void solve(){string s;cin>>s;mp[cnt]++;//初始化为0,即0~9的数字都没出现过,都是偶数int ans = 0;for(int i=0;i<s.length();i++){cnt[s[i]-'0']^=1;//开始为0 异或1为1(奇数个) 之后再出现异或1为0(偶数个)ans+=mp[cnt];//加上和它完全一样的区间数for(int j=0;j<10;j++){//统计只有一个数字出现次数不一样的区间vector<int> tmp;tmp=cnt;tmp[j]^=1;ans+=mp[tmp];}mp[cnt]++;//每次结束之后 这个区间数+1}

中位数

计算中位数的步骤如下:
首先,将所有数据按照大小顺序排列。
如果数据数量是奇数,那么中位数就是排序后的中间数值
如果数据数量是偶数,那么中位数是排序后中间两个数的平均值

题目
小红拿到了一个数组:a1 ,a2 ,…,an。她定义 f(i) 为,删除第i个元素后,数组的中位数。现在小红想让你求出f(1),f(2)…f(n)的值,你能帮帮她吗?
输入描述:
第一行输入一个正整数n,代表数组的大小。
第二行输入n个正整数ai,代表数组的元素。
2≤n≤105
1≤ai≤109
输出描述:
输出n行,每行输出一个浮点数,第i行代表f(i)的值。保留一位小数。
示例1
输入
4
2 5 8 1
输出
5.0
2.0
2.0
5.0
示例2
输入
3
1 2 3
输出
2.5
2.0
1.5

实践代码:

void solve(){int n;cin>>n;vector<int> a(n),b(n);for(int i=0;i<n;i++) {cin>>a[i];b[i]=a[i];}sort(b.begin(),b.end());if(n%2==0){//即删一个数后数列个数为奇数情况int t1=b[n/2-1],t2=b[n/2];for(int i=0;i<n;i++){if(a[i]<t2) printf("%.1f\n",t2*1.0);else printf("%.1f\n",t1*1.0);}}else{//即删一个数后数列个数为偶数的情况int t1=b[n/2-1];int t2=b[n/2];int t3=b[n/2+1];for(int i=0;i<n;i++){if(a[i]<t2) printf("%.1f\n",(t2+t3)/2.0);if(a[i]>t2) printf("%.1f\n",(t1+t2)/2.0);else if(a[i]==t2)printf("%.1f\n",(t1+t3)/2.0);}}
}

心有猛虎,细嗅蔷薇。再见了朋友~

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

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

相关文章

springboot+vue在idea上面的使用小结

1.在mac上面删除java的jdk方法&#xff1a; sudo rm -rfjdk的路径 sudo rm -rf /Users/like/Library/Java/JavaVirtualMachines/corretto-17.0.10/Contents/Home 2.查询 Mac的jdk版本和路径&#xff1a; /usr/libexec/java_home -V 3.mac上面查询和关闭idea的网页端口&…

快速上手Spring Cloud五:Spring Cloud与持续集成/持续部署(CI/CD)

快速上手Spring Cloud 一&#xff1a;Spring Cloud 简介 快速上手Spring Cloud 二&#xff1a;核心组件解析 快速上手Spring Cloud 三&#xff1a;API网关深入探索与实战应用 快速上手Spring Cloud 四&#xff1a;微服务治理与安全 快速上手Spring Cloud 五&#xff1a;Spring …

samba实现linux共享文件夹

一、samba安装 sudo apt install samba 二、配置Samba 编辑Samba配置文件sudo vi /etc/samba/smb.conf 在文件末尾添加以下内容&#xff0c;设置一个简单的共享目录&#xff08;替换path_to_share为实际的共享目录路径&#xff09;&#xff1a; [Share] path /path_to_sha…

鱼眼相机的测距流程及误差分析[像素坐标系到空间一点以及测距和误差分析]

由于最近在整理单目测距的内容&#xff0c;顺手也总结下鱼眼相机的测距流程和误差分析&#xff0c;如果有错误&#xff0c;还请不吝赐教。 参考链接: 鱼眼镜头的成像原理到畸变矫正&#xff08;完整版&#xff09; 相机模型总结&#xff08;针孔、鱼眼、全景&#xff09; 三维…

Unity照片墙简易圆形交互效果总结

还要很多可以优化的点地方&#xff0c;有兴趣的可以做 比如对象的销毁和生成可以做成对象池&#xff0c;走到最左边后再移动到最右边循环利用 分析过程文件&#xff0c;采用Blender&#xff0c;资源已上传&#xff0c;可以播放动画看效果&#xff0c;下面截个图&#xff1a; …

关系型数据库mysql(8)sql高级语句②

目录 一.子查询——Subquery 语法 环境准备 In——查询已知的值的数据记录 子查询——Insert 子查询——Update 子查询——Delete Not In——表示否定&#xff0c;不在子查询的结果集里 Exists——判断查询结果集是否为空 子查询——别名 ​编辑 二.视图 理论&a…

图论之路径条数专题

一直忙着金工实习蓝桥杯&#xff0c;好久没有看图论了&#xff0c;今天就小试几题享受下被虐的快感。 1.最短路拓扑 首先来几个结论&#xff1a; 1.最短路图没有环&#xff08;可以用反证法证明&#xff09; 2.dis[u]edge[u,v]dis[v]&#xff0c;那么u,v端点的边一定在最短路…

selenium自动化测试

selenium自动化测试 1、Javaselenium环境搭建2、测试&#xff0c;打开任意网页3、selenium 常见的Api3.1元素定位findElement3.1.1 css 选择语法3.1.2 xpath 选择语法 1、Javaselenium环境搭建 下载chromedriver&#xff0c;版本要与Chrome浏览器版本一致。 下载之后将chro…

第P1周:实现mnist手写数字识别

>- **&#x1f368; 本文为[&#x1f517;365天深度学习训练营](https://mp.weixin.qq.com/s/0dvHCaOoFnW8SCp3JpzKxg) 中的学习记录博客** >- **&#x1f356; 原作者&#xff1a;[K同学啊 | 接辅导、项目定制](https://mtyjkh.blog.csdn.net/)** 目录 一、前言 二、我…

vant checkbox 复选框 样式改写

修改前 修改后 基于 vant&#xff1a; 4.8.3 unocss: 0.53.4 <van-checkbox-group v-model"query.zczb" shape"square" class"text-16 w-100% flex flex-wrap"><template v-for"item in registerCapitalOption"><v…

LeetCode 27 移除元素

给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面…

“预防儿童烧烫伤”科普安全课堂走进嘉鱼县第一小学

为提高嘉鱼县儿童烧烫伤安全意识、隐患识别能力以及突发应急处置能力&#xff0c;3月26日下午&#xff0c;在中国社会福利基金会烧烫伤关爱公益基金、嘉鱼县妇女联合会、嘉鱼县教育局的支持下&#xff0c;嘉鱼县蒲公英社会工作服务中心走进嘉鱼县第一小学开展预防儿童烧烫伤科普…

基于Spring Boot 3 + Spring Security6 + JWT + Redis实现登录、token身份认证

基于Spring Boot3实现Spring Security6 JWT Redis实现登录、token身份认证。 用户从数据库中获取。使用RESTFul风格的APi进行登录。使用JWT生成token。使用Redis进行登录过期判断。所有的工具类和数据结构在源码中都有。 系列文章指路&#x1f449; 系列文章-基于Vue3创建前端…

MongoDB内存过高问题分析解决

告警 公司有个3.2.7版本的mongo复制集&#xff0c;最近几天频繁告警内存过高。 服务器配置16C64G内存。mongo备节点内存使用到55G&#xff0c;触发告警。 以下内容基于3.2.7版本&#xff0c;3.2.7版本已经太老&#xff0c;很多后来的命令和配置&#xff0c;3.2.7都没有。 …

【黑马头条】-day04自媒体文章审核-阿里云接口-敏感词分析DFA-图像识别OCR-异步调用MQ

文章目录 day4学习内容自媒体文章自动审核今日内容 1 自媒体文章自动审核1.1 审核流程1.2 内容安全第三方接口1.3 引入阿里云内容安全接口1.3.1 添加依赖1.3.2 导入aliyun模块1.3.3 注入Bean测试 2 app端文章保存接口2.1 表结构说明2.2 分布式id2.2.1 分布式id-技术选型2.2.2 雪…

Unity2018发布安卓报错 Exception: Gradle install not valid

Unity2018发布安卓报错 Exception: Gradle install not valid Exception: Gradle install not valid UnityEditor.Android.GradleWrapper.Run (System.String workingdir, System.String task, System.Action1[T] progress) (at <c67d1645d7ce4b76823a39080b82c1d1>:0) …

Prometheus +Grafana +node_exporter可视化监控Linux虚机

1、介绍 待补充 2、架构图 待补充 Prometheus &#xff1a;主要是负责存储、抓取、聚合、查询方面。 node_exporter &#xff1a;主要是负责采集物理机、中间件的信息。 3、搭建过程 配置要求&#xff1a;1台主服务器 n台从服务器 &#xff08;被监控的linux虚机&am…

MoneyPrinterTurbo搭建详细流程(Linux)及常见问题

先附上链接: MoneyPrinterTurbohttps://github.com/harry0703/MoneyPrinterTurboMoneyPrinterTurbo是一款合成视频的软件。 你只需要提供一个主题或者关键字,就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐,然后合成一个高清的短视频。 接下来讲解详细的搭…

macOS 13 Ventura (苹果最新系统) v13.6.6正式版

macOS 13 Ventura是苹果电脑的全新操作系统&#xff0c;它为用户带来了众多引人注目的新功能和改进。该系统加强了FaceTime和视频通话的体验&#xff0c;同时优化了邮件、Safari浏览器和日历等内置应用程序&#xff0c;使其更加流畅、快速和安全。特别值得一提的是&#xff0c;…

测试人进阶技能:单元测试报告应用指南

为什么需要单元测试 从产品角度而言&#xff0c;常规的功能测试、系统测试都是站在产品局部或全局功能进行测试&#xff0c;能够很好地与用户的需要相结合&#xff0c;但是缺乏了对产品研发细节&#xff08;特别是代码细节的理解&#xff09;。 从测试人员角度而言&#xff0…