河南萌新联赛2025第(五)场:信息工程大学补题

文章目录

    • @[TOC](文章目录)
  • 前言
  • A.宇宙终极能量调和与多维时空稳定性验证下的基础算术可行性研究
  • B.中位数
  • C.中位数+1
  • F.中位数+4
  • G.简单题
  • H.简单题+
  • I.Re:从零开始的近世代数复习(easy)
  • K.狂飙追击
  • L.防k题

前言

这次萌新联赛考到了很多数学知识


A.宇宙终极能量调和与多维时空稳定性验证下的基础算术可行性研究

在这里插入图片描述
这题纯属文字题,只需要关注“经典线性叠加”
直接输出2就行了

B.中位数

在这里插入图片描述
在这里插入图片描述
这题开始对中位数的定义有点遗忘,后来想起来了,该题其实求的就是最大值与最小值的中位数

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
const int N=1e6+6;
int a[N];
signed main()
{int n;cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}if(n==1){cout<<a[1]/2;}else {sort(a+1,a+n+1);cout<<(a[1]+a[n])/2;}return 0;} 

C.中位数+1

在这里插入图片描述
这题就是求动态中位数,利用两个优先队列,一个是从小到大,一个是从大到小,大堆放小值,小堆放大值

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
const int N=1e5+6;
int a[N];
signed main()
{int n;cin>>n;priority_queue<int>pq;priority_queue<int,vector<int>,greater<int>>pq1;for(int i=1;i<=n;i++){cin>>a[i];pq.push(a[i]);if(pq.size()>pq1.size()+1)//为了让两个队列的长度差保持<=1,维护后面奇数时输出的大堆堆顶是中位数{pq1.push(pq.top());pq.pop();}if(!pq1.empty()&&pq.top()>pq1.top())//维护大堆放小值,小堆放大值{int z=pq.top();int y=pq1.top();pq.pop();pq1.pop();pq.push(y);pq1.push(z);}if(i%2==1)//奇数时输出大堆堆顶{cout<<pq.top()<<" ";}else//偶数时输出大堆堆顶+小堆堆顶然后/2{cout<<(pq.top()+pq1.top())/2<<" ";}}return 0;
}

F.中位数+4

在这里插入图片描述
这题其实就是十进制转化为其他进制过程

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
const int N=1e6+6;
int a[N];
signed main()
{int n,k;cin>>n>>k;int sum=0;if(n<k){cout<<"0";}else{while(n>1){if(n%k==0)//此时余数为0,所以++{sum++;n=n/k;}else{break;}}cout<<sum;}return 0;} 

G.简单题

在这里插入图片描述
在这里插入图片描述
这个是行列式,当时看一直以为+1就行了,还是知道的太少了
在这里插入图片描述
最后计算知道,该题为一个斐波那契数列,对二取模后就有一个规律,见代码

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
signed main()
{int n;cin>>n;if(n%3==1){cout<<"1";}else{cout<<"0";}return 0;
}

H.简单题+

在这里插入图片描述
这个就是求斐波那契数列前n项和
其有一个规律:s[n]=f[n+2]-1
所以求n后面第二项-1就行了,对于求斐波那契数列也有规律
n为奇数时:
在这里插入图片描述n为偶数时:
在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
unordered_map<int,int>mp;
const int mod=998244353;
int mc(int x)
{if(mp.count(x)){return mp[x];}if(x==0)return 0;else if(x==1||x==2)return 1;else{int k=x/2;int a=mc(k);int b=mc(k+1);if(x%2!=0){return mp[x]=(b*b%mod+a*a%mod)%mod;//奇数时}else{return mp[x]=(a*((2*b%mod-a+mod)%mod))%mod;//偶数时}}
}
signed main()
{int n;cin>>n;if(n==1)cout<<"1";else if(n==2)cout<<"2";else{int sum=mc(n+2)-1+mod;sum=sum%mod;cout<<sum;}return 0;
}

I.Re:从零开始的近世代数复习(easy)

在这里插入图片描述
在这里插入图片描述
这题真的是服我自己了,当时根本没看到、k=2,本来想用共同祖先写,当时想着有好几个怎么求,没有想到后面出现了k=2。这题就是利用共同祖先写,利用倍增找到两个点的最近共同祖先,然后在遍历整个树的时候提前定义一个数组代表从根节点到该点权值,最和简单相加相减就行了

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
const int N=1e5+6;
int a[N];
int b[N]={0};
int c[N];
int h[N]={0};
int fa[N][25];
vector<int>ve[N];
int n;
void dfs(int fu,int zi)//遍历整个树
{h[zi]=h[fu]+1;fa[zi][0]=fu;c[zi]=c[fu]+a[fu];//计算根节点到该点的权值for(int i=1;i<=20;i++){fa[zi][i]=fa[fa[zi][i-1]][i-1];}for(auto it:ve[zi]){dfs(zi,it);}
}
int lca(int a,int b)//倍增求LCA
{if(h[a]<h[b]){swap(a,b);}for(int i=20;i>=0;i--){if(h[fa[a][i]]>=h[b]){a=fa[a][i];}}if(a==b){return a;}for(int i=20;i>=0;i--){if(fa[a][i]!=fa[b][i]){a=fa[a][i];b=fa[b][i];}}return fa[a][0];
}
signed main()
{cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<n;i++){int u,v;cin>>u>>v;b[v]++;//计算入度,找根节点ve[u].push_back(v);}int x;for(int i=1;i<=n;i++){if(b[i]==0){x=i;}}dfs(0,x);int q;cin>>q;while(q--){int k;cin>>k;int p,q;cin>>p>>q;int z=lca(p,q);int z1=c[p]+c[q]-c[z]+a[p]+a[q]-a[z];cout<<z1<<endl;}return 0;} 

K.狂飙追击

在这里插入图片描述
由于它这个m是变化的,所以不能只进行一些简单的判断,利用dfs搜索,对x,y分别搜索,如果符合就计算最少步数

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
int sx,sy,tx,ty;
bool bl=0;
int maxx=INT_MAX;
void dfs(int x,int y,int z)
{if(x>tx||y>ty){return ;}if(x==tx&&y==ty){bl=1;maxx=min(maxx,z);return ;}int m=max(x,y);int x1=x+m;int y1=y+m;dfs(x1,y,z+1);dfs(x,y1,z+1);
}
signed main()
{cin>>sx>>sy>>tx>>ty;if(sx>tx||sy>ty){cout<<"-1";}else{dfs(sx,sy,0);if(bl==1){cout<<maxx;}else{cout<<"-1";}}return 0;
}

对dfs遍历举个例
从1,2到4,5
在这里插入图片描述

L.防k题

在这里插入图片描述
在这里插入图片描述
这题就是一个二分答案题,先套模板再判断check成立条件

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pii pair<int,int>
#define fi first
#define se second
#define int long long
#define endl '\n'
const int N=1e6+6;
int n,m,z,p,q;
int check(int mid)
{int i=0;int n1=n,m1=m,z1=z,p1=p,q1=q;while(p1>0){for(int i=1;i<=3;i++){n1-=q;if(n1<=0){mid--;n1=n;}}if(mid<=0)//很重要,因为在上面的循环中可能减去多次,导致mid<0,所以不能只判断其是否等于零{return 0;}p1-=mid*(i*z+m1);i++;}return 1;   
}
signed main()
{cin>>n>>m>>z>>p>>q;int l=1;int r=N;while(l<r){int mid=(l+r)/2;if(check(mid)==1){r=mid;}else{l=mid+1;}}cout<<r;return 0;
}

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

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

相关文章

SuperMap GIS基础产品FAQ集锦(20250804)

一、SuperMap iServer 问题1&#xff1a;iServer的名称和logo怎么自定义&#xff1f; 11.3.0 【解决办法】参考&#xff1a;https://blog.csdn.net/supermapsupport/article/details/144744640 问题2&#xff1a;iServer 刷新工作空间&#xff0c;当数据库是 PostGIS 时&#x…

AWS CloudFormation批量删除指南:清理Clickstream Analytics堆栈

概述 在AWS环境管理中,经常会遇到需要批量删除CloudFormation堆栈的情况。本文记录了一次完整的Clickstream Analytics堆栈清理过程,包括遇到的问题和解决方案,希望能为其他开发者提供参考。 背景 我们的AWS账户中部署了多个Clickstream Analytics解决方案的CloudFormati…

redis中分布式锁的应用

我们之前讲了秒杀模块的实现&#xff0c;使用了sychronized互斥锁&#xff0c;但是在集群模式下因为不同服务器有不同jvm&#xff0c;所以synchronized互斥锁失效了。 redis实现秒杀超卖问题的解决方案&#xff1a;(仅限于单体项目)-CSDN博客 这时就要找到一个多台服务器都能…

【科研绘图系列】R语言绘制微生物丰度和基因表达值的相关性网络图

文章目录 介绍 加载R包 数据下载 导入数据 数据预处理 画图 系统信息 参考 介绍 【科研绘图系列】R语言绘制微生物丰度和基因表达值的相关性网络图 加载R包 library(tidyverse) library(ggsignif) library(RColorBrewer) library(dplyr) library(reshape2) library(grid

Pycharm现有conda环境有对应env,但是添加后没反应

一、系统环境 二、异常现象 Pycharm现有conda环境有对应env&#xff1a; anaconda3的envs下也确实存在这个环境&#xff1a; 但是添加后没反应&#xff08;点击确认后&#xff0c;yolov7环境没有出现在列表中&#xff09;&#xff1a; 但是我之前在别的机子添加是没问题的。 …

Git常用指令大全:从入门到精通

Git 的常用指令&#xff0c;分为基础操作、分支管理、远程协作、撤销操作和高级功能五个部分&#xff0c;并附上实用示例&#xff1a;一、基础操作&#xff08;必会&#xff09;初始化仓库 git init # 在当前目录创建新仓库克隆远程仓库 git clone https://github.com/user/rep…

Redis (REmote DIctionary Server) 高性能数据库

Redis {REmote DIctionary Server} 高性能数据库1. What is Redis?1.1. 基于内存的数据存储2. Install Redis on Linux3. Starting and stopping Redis in the background3.1. systemctl3.2. service 4. Connect to Redis5. 退出 Redis 的命令行界面 (redis-cli)6. redis-serv…

MySQL中的DML(二)

DML(Data Manipulation Language) : 数据库操作语言&#xff0c;对数据库中表的数据进行增删改操作。 创建student表&#xff1a; CREATE DATABASE test; use test; CREATE TABLE student (id int,name varchar(255),address varchar(255),city varchar(255) );INSERT INTO stu…

linux 主机驱动(SPI)与外设驱动分离的设计思想

一、 主机驱动与外设驱动分离Linux中的SPI、I2c、USB等子系统都利用了典型的把主机驱动和外设驱动分离的想法&#xff0c;让主机端负责产生总线上的传输波形&#xff0c;而外设端只是通过标准的API来让主机端以适当的波形访问自身。因此这里涉及了4个软件模块&#xff1…

如何生成.patch?

文章目录 ​​方法 1:使用 `git format-patch`(推荐)​ ​​步骤​​ ​方法 2:使用 `diff`命令(适用于非 Git 项目)​ ​​方法 3:使用 `git diff`(生成未提交的变更)​ ​方法 4:使用 `quilt`(适用于大量补丁管理) ​如何提交补丁给上游项目?​ ​总结​​ 在 L…

【计算机网络 | 第6篇】计算机体系结构与参考模型

文章目录计算机体系结构与参考模型分层思想&#x1f342;常见的3种模型&#xff08;网络体系结构&#xff09;&#x1f426;‍&#x1f525;TCP/IP体系结构各层包含的主要协议&#x1f95d;每层所解决的主要问题&#x1f914;层次间的交互规则&#x1f95d;实体与对等实体协议服…

Autoware Universe 感知模块详解 | 第一节 感性认识多源传感器标定

传感器与感知模块 在基于规则的自动驾驶系统中&#xff0c;感知模块&#xff0c;承担着理解车体周围环境信息的重要职责。它通过融合多种传感器数据&#xff0c;与定位模块共同为规划与控制模块提供准确、系统化的输入信息。正如人可以通过眼睛观察周围的环境&#xff08;盲人也…

docker搭建java运行环境(java或者springboot)

目录1. 创建测试代码2. 编译打包3. 代码环境运行使用普通运行方式使用docker挂载项目&#xff08;长期运行&#xff09;1. 创建 Dockerfile2. 构建并后台运行使用docker swram实现零停机更新&#xff08;推荐&#xff09;1. 初始化swarm2. 创建 Dockerfile3. 使用Dockerfile 构…

哈希表特性与unordered_map/unordered_set实现分析

目录 一、哈希表核心特性总结 1.开放地址法 2.链地址法 二、unordered_map/unordered_set实现要点分析 1. 哈希表核心实现(HashTable2.h) (1) 哈希函数处理 (2) 链地址法实现 (3) 迭代器设计 (4) hashtable设计 2. unordered_map实现要点 3. unordered_map实现要点 一…

生产环境sudo配置详细指南

目录 1. 语法格式 2. 配置示例 3. 使用 /etc/sudoers.d/ 目录管理&#xff08;推荐&#xff09; 4. 基础配置&#xff1a;用户权限管理 4.1 ​​添加用户到sudo组 ​​4.2 验证用户组信息 5. sudo日志配置 5.1 修改sudoers配置文件 5.2 创建日志目录与权限设置 6. Su…

CSS动态视口单位:彻底解决移动端适配顽疾,告别布局跳动

你是否曾被这些问题困扰&#xff1a; 移动端页面滚动时&#xff0c;地址栏收缩导致页面高度突变&#xff0c;元素错位&#xff1f;100vh在移动设备上实际高度超出可视区域&#xff1f;全屏弹窗底部总被浏览器UI遮挡&#xff1f; 这些痛点背后都是传统视口单位的局限——无法响应…

【P27 4-8】OpenCV Python——Mat类、深拷贝(clone、copyTo、copy)、浅拷贝,原理讲解与示例代码

P27 4-8 1 Mat结构体2 深拷贝VS浅拷贝3 代码示例1 Mat结构体 2 深拷贝VS浅拷贝 只拷贝了头部&#xff0c;header&#xff0c;&#xff0c;但是data部分是共用的&#xff0c;速度非常快&#xff1b; 缺点&#xff0c;任意一个修改&#xff0c;另一个data跟着变&#xff0c;这就是…

容器运行时支持GPU,并使用1panel安装ollama

前言 安装Docker请看之前博文&#xff1a;Docker实战中1panel方式安装Docker。 安装 NVIDIA 容器工具包 https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html 安装 先决条件 阅读有关平台支持的部分。为您的 Linux 发行版安装…

高并发内存池 性能瓶颈分析与基数树优化(9)

文章目录前言一、性能瓶颈分析操作步骤及其环境配置分析性能瓶颈二、基数树优化单层基数树二层基数树三层基数树三、使用基数树来优化代码总结前言 到了最后一篇喽&#xff0c;嘻嘻&#xff01;   终于是要告一段落了&#xff0c;接下来我们将学什么呢&#xff0c;再说吧&…

C#面试题及详细答案120道(01-10)-- 基础语法与数据类型

《前后端面试题》专栏集合了前后端各个知识模块的面试题&#xff0c;包括html&#xff0c;javascript&#xff0c;css&#xff0c;vue&#xff0c;react&#xff0c;java&#xff0c;Openlayers&#xff0c;leaflet&#xff0c;cesium&#xff0c;mapboxGL&#xff0c;threejs&…