当前位置: 首页 > news >正文

2024河南萌新联赛第(三)场 河南大学

B. 正则表达式

题目:

https://ac.nowcoder.com/acm/contest/87865/B
给出n个地址,每个地址的形式为x.x.x.x,找四个x都满足x>=0&&x<=255的个数

思路:

首先定义四个数组和一个字符,然后按题目所给的形式输入,判断四个数组若都满足条件,ans++,最后输出ans。

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=1100;
int a[N],b[N],c[N],d[N];
char s;
signed main()
{IOSint n,ans=0;cin>>n;for(int i=1;i<=n;i++){cin>>a[i]>>s>>b[i]>>s>>c[i]>>s>>d[i];if(a[i]>=0&&a[i]<=255&&b[i]>=0&&b[i]<=255&&c[i]>=0&&c[i]<=255&&d[i]>=0&&d[i]<=255)ans++;}cout<<ans<<'\n';
}

C. Circle

题目:

https://ac.nowcoder.com/acm/contest/87865/C
给出一个整数n,求n个圆可以分割的最大区域数

思路:

找规律,一开始看着样例直接写的pow(2,n),想简单了,又花了一下4,5个的情况,发现0,1的时候是pow(2,n),当n>1时,满足n*n-(n-2)

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
signed main()
{IOSint t;cin>>t;while(t--){int n;cin>>n;if(n<2)cout<<pow(2,n)<<" ";else{cout<<n*n-(n-2)<<" ";}}
}

D. 开心消消乐(Right Version)

题目:

https://ac.nowcoder.com/acm/contest/87865/D
给定一个n个数的数列,可执行若干次操作,每次操作选定两个数𝑙,𝑟(1≤𝑙≤𝑟≤𝑛)l,r(1≤l≤r≤n),使得∀𝑖∈[𝑙,𝑟],𝑎i=ai⨁al。要求l一直递减。求让这个序列全部转换为0的最小操作次数。

思路:

​ 这个题比赛的时候过的人挺少,直接没看,后来别人给我说这道题特别简单,看了一眼真的特别简单,立马写出来。
因为题目已经限制l一直递减了,所以只需要定义一个数组,令a[0]=-1,从a[1]开始,如果a[i]!=a[i-1],就让ans++,最后得出的ans就是答案。

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=2e6+20;
int a[N];
signed main()
{IOSint n,ans=0;a[0]=-1;cin>>n;for(int i=1;i<=n;i++){ cin>>a[i];if(a[i]!=a[i-1]){if(a[i]!=0)ans++;}}cout<<ans<<'\n';}

F.累加器

题目:

https://ac.nowcoder.com/acm/contest/87865/F
给出一个数n,每次加1,观察二进制下位数有几位变化,在加了k次1后总共变化了多少。

思路1:

1.跟第一次萌新联赛的题相似,1是每两次出现1次,2是每4次出现1次,依次类推n是每pow(2,n)出现1次
2.累加,令e=1;sum=sum+x/e;e*=2;当x<e的时候截止
3.再利用前缀和,用x+y次加1二进制下的改变量减去x次加1的改变量。

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=2e6;int solve(int x)
{int e=1,sum=0;while(x>=e){sum=sum+x/e;e*=2;}return sum;
}signed main()
{IOSint t;cin>>t;while(t--){int x,y;cin>>x>>y;int ss=solve(x+y)-solve(x);cout<<ss<<'\n';}
}

思路2:

用异或写:
1.首先累加位数的改变量,用bitset定义p,q,s,然后令p=1,进入循环,令q=i,然后s=q^p,异或的性质是相同为0,不同为1,统计异或后1的个数,后面令p=q。不断循环累加异或后1的个数。存在数组a中
2.利用前缀和,a[y+x]-a[x]得出最后答案。

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#include<bitset>
int a[2000010];
bitset<64>p,q,s;int x,y,w=0;void solve()
{cin>>x>>y;cout<<a[y+x]-a[x]<<endl;
}signed main()
{IOSint t=1;cin>>t;p=1;for(int i=1;i<=2000010;i++){q=i;s=p^q;w+=s.count();a[i]=w;p=q;}while(t--){solve();}return 0; 
}

J.keillempkill学姐の卷积

题目:

https://ac.nowcoder.com/acm/contest/87865/J
给一个nn的矩阵和一个mm的矩阵(1≤n≤m≤20),卷积操作得出最后结果。
卷积操作是:比如nn比较小,就在mm的矩阵中从头开始先找出与nn数量相同的矩阵,对应位置分别相乘再相加,然后再让列加1,直到覆盖完全部的列,再把行加1,直到把整个mm的矩阵覆盖完全。最后输出一个(m-n+1)*(m-n+1)的矩阵。

思路:

1.首先看for循环吧nn和mm的矩阵输入
2.开for循环,i<=n;j<=n,x=0,y=0;累加ans+=a[i][j]*b[i+x][j+y];当in&&jn的时候就把此时的ans值存入数组里,如果此时的j+y!=0,就让y++否则x++,并且此时让y重置回0,当i+xm&&j+ym时说明m*m的矩阵已经全被覆盖,结束循环。
3.输出储存的ans的值,当**(i+1)%(m-n+1)==0**时,输出换行。

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
int a[30][30],b[30][30],tt[1000];
signed main()
{IOSint n,m,ans=0,x=0,y=0,s=0;cin>>n>>m;int t=m-n+1;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)cin>>a[i][j];for(int i=1;i<=m;i++)for(int j=1;j<=m;j++)cin>>b[i][j];for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){ans+=a[i][j]*b[i+x][j+y];//cout<<ans<<'\n';if(i==n&&j==n){//cout<<"0"<<'\n';tt[s++]=ans;if(i+x==m&&j+y==m){//tt[s++]=ans;break;}if(j+y!=m)y++;else{x++;y=0;}i=0,j=0;ans=0;//cout<<x<<" "<<y<<'\n';}}}//cout<<s<<'\n';//cout<<"-1"<<'\n';for(int i=0;i<s;i++){cout<<tt[i]<<" ";if((i+1)%t==0)cout<<'\n';}
}

L.SSH

题目:

https://ac.nowcoder.com/acm/contest/87865/L
1.输入m,n,q,m是密钥对,包含一个公钥和一个私钥;n是主机;q代表q次查询
2.输入m行,每行两个字符串代表一个公钥和一个私钥。
3.n组数据,包含一个字符串代表id,和一个整数k代表用户数量,然后是k行,每行一个字符串用户名,一个整数t表示公钥数量,t个字符串表示公钥
4.接下来q行,表示q次查询,每行一个字符串表示用户名,一个字符串表示用户id,一个字符串表示私钥。

思路:

首先用一个map来存公钥,然后再用两个map里面套vector来分别存用户名和私钥,然后利用for循环找是否有满足条件的(细节见代码注释),按要求输出。

AC代码:

#include<bits/stdc++.h>
#define int long long
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=2e5+20;
signed main()
{IOSint m,n,q;cin>>m>>n>>q;map<string,string> a;for(int i=1;i<=m;i++){string s1,s2;cin>>s1>>s2;a[s2]=s1;}map<string,vector<string> > s;map<string,vector<string> > b;for(int i=1;i<=n;i++){string t;int k;cin>>t>>k;for(int j=1;j<=k;j++){string user;cin>>user;s[t].push_back(user);int tt;cin>>tt;for(int cnt=1;cnt<=tt;cnt++){string ss;cin>>ss;b[user].push_back(ss);}}}for(int i=1;i<=q;i++){string s1,s2,s3;cin>>s1>>s2>>s3;int flag=0;for(auto t : s[s2])//将该ip对应的用户名赋给t{if(t==s1)//如果该ip对应的用户名中包含s1{flag=1;break;}}if(flag==0)cout<<"No"<<'\n';else{string ans=a[s3];//所要查询私钥对应的公钥int f=0;for(auto t : b[s1])//将该ip该用户有的公钥赋给t{if(t==ans)//如果该ip该用户有的公钥中有所要查询私钥对应的公钥{f=1;break;}}if(f==0)cout<<"No"<<'\n';elsecout<<"Yes"<<'\n';}}
}

相关文章:

2024河南萌新联赛第(三)场 河南大学

B. 正则表达式 题目&#xff1a; https://ac.nowcoder.com/acm/contest/87865/B 给出n个地址&#xff0c;每个地址的形式为x.x.x.x&#xff0c;找四个x都满足x>0&&x<255的个数 思路&#xff1a; 首先定义四个数组和一个字符&#xff0c;然后按题目所给的形式…...

回溯法---分割回文串

题目&#xff1a;给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是回文串。返回 s 所有可能的分割方案。 思路&#xff1a; 第一步&#xff1a;确定参数与返回值。参数为字符串s&#xff0c;分割起始下标startIndex&#xff0c;无返回值 第二…...

DDR等长,到底长度差多少叫等长?

DDR4看这一篇就够了 - 知乎 (zhihu.com) 【全网首发】DDR4 PCB设计规范&设计要点PCB资源PCB联盟网 - Powered by Discuz! (pcbbar.com) 终于看到较为权威的DDR4等长要求了: !!!! 依据这个要求&#xff0c;H616项目的等长线不合格&#xff1a;...

程序员面试题------N皇后问题算法实现

N皇后问题是一个著名的计算机科学问题&#xff0c;它要求在NN的棋盘上放置N个皇后&#xff0c;使得它们之间不能相互攻击&#xff0c;即任意两个皇后都不能处于同一行、同一列或同一斜线上。这个问题可以看作是一个回溯算法问题&#xff0c;通过逐步尝试不同的放置位置&#xf…...

【C++学习】6、继承

1、什么是继承&#xff1f; 继承描述的是类与类之间的关系&#xff0c;A类继承B类&#xff0c;A类就拥有B类的数据和方法。 继承的方式&#xff1a; 公有继承&#xff08;public&#xff09; 保护继承&#xff08;protected&#xff09; 私有继承&#xff08;private&…...

从零开始的MicroPython(三) 按键与外部中断

上一篇&#xff1a;从零开始的MicroPython(二) GPIO及点灯代码 文章目录 前言硬件原理软件原理注意代码编写轮询外部中断其他 前言 点灯是嵌入式GPIO输出的典型&#xff0c;按键则是输入的典型。 硬件原理 按键对角接通。 软件原理 如果是一端接高电平&#xff0c;一端接单…...

Windows下编译安装Kratos

Kratos是一款开源跨平台的多物理场有限元框架。本文记录在Windows下编译Kratos的流程。 Ref. from Kratos KRATOS Multiphysics ("Kratos") is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, a…...

汽车-腾讯2023笔试(codefun2000)

题目链接 汽车-腾讯2023笔试(codefun2000) 题目内容 现在塔子哥有 n 个汽车&#xff0c;所有的汽车都在数轴上&#xff0c;每个汽车有1.位置 pos 2.速度 v &#xff0c;它们都以在数轴上以向右为正方向作匀速直线运动。 塔子哥可以进行任意次以下操作&#xff1a;选择两个汽车…...

软测面试二十问(最新面试)

1.软件测试的流程是什么 参加需求评审会&#xff0c;解决需求疑问---写测试用例---对测试用例进行评审---评审后开始执行测试---提交bug---追踪bug---关闭bug---回归测试---交叉测试---编写测试报告---冒烟测试 2.什么是黑盒测试和白盒测试&#xff1f;它们有何区别 黑盒测试…...

风吸杀虫灯采用新型技术 无公害诱虫捕虫

TH-FD2S】风吸杀虫灯利用害虫的趋光性和对特定波长的光源&#xff08;如紫外光、蓝光&#xff09;的敏感性&#xff0c;通过光波引诱害虫成虫扑灯。同时&#xff0c;内置的风扇产生强烈的气流&#xff0c;形成负压区&#xff0c;将害虫迅速吸入到收集器中。害虫在收集器内被风干…...

随手记录第十二话 -- JDK8-21版本的新增特性记录(Lambda,var,switch,instanceof,record,virtual虚拟线程等)

本文主要用于记录jdk8以来的新增特性及使用方法! 1.Java8 Lambda表达式(8) 1.1 方法引用 List<String> list List.of("1", "2", "3");list.forEach(i -> System.out.println(i));//方法引用list.forEach(System.out::println);1.2 接…...

SpringCloud网关 SpringBoot服务 HTTP/HTTPS路由/监听双支持

背景 一般来说SpringCloud Gateway到后面服务的路由属于内网交互&#xff0c;因此路由方式是否是Https就显得不是那么重要了。事实上也确实如此&#xff0c;大多数的应用开发时基本都是直接Http就过去了&#xff0c;不会一开始就是直接上Https。然而随着时间的推移&#xff0c…...

JavaScript做网页是否过期的处理

通过路由上的参数生成唯一md5和路由上token做验证_md5 token-CSDN博客 前言&#xff1a;基于这篇文章我们做网页是否超时&#xff0c;网页是否过期的处理。打开一个网页允许他在一定时间内可以访问&#xff0c;过了这个时间就不可以访问了&#xff0c;encrypt是h5加密方法&…...

python coding时遇到的问题

Q&#xff1a;只有cpu的时候加载模型 A&#xff1a;checkpoint torch.load(model_path, map_locationtorch.device(‘cpu’)) Q&#xff1a;vscode的文件路径和spyder的不一样 A&#xff1a;在vscode中&#xff0c;右键要用的文件&#xff0c;选择“文件相对路径”...

攻防演练号角吹响,聚铭铭察高级威胁检测系统助您零失分打赢重保攻坚战

在数字化浪潮中&#xff0c;攻防演练成为了衡量网络安全防御力的核心标尺&#xff0c;其重要性与日俱增。这项由政府、行业监管或企业内部主导的安全活动&#xff0c;随着互联网普及而兴起&#xff0c;现已发展成为全球公认的检验网络安全体系效能的标准。它不仅关乎技术实力的…...

个人量化交易兴起!有什么好用的量化软件推荐?迅投QMT量化平台简介!

QMT是专门为机构、活跃投资者、高净值客户等专业投资者研发的智能量化交易终端&#xff0c;拥有高速行情、极速交易、策略交易、多维度风控等专业功能&#xff0c;满足专业投资者的特殊交易需求。覆盖业务范围广:沪深A股、港股通、两融、期权、期货。 适合用QMT的投资者&#x…...

SQL labs-SQL注入(七,sqlmap对于post传参方式的注入,2)

本文仅作为学习参考使用&#xff0c;本文作者对任何使用本文进行渗透攻击破坏不负任何责任。参考&#xff1a;SQL注入之Header注入_sqlmap header注入-CSDN博客 序言&#xff1a; 本文主要讲解基于SQL labs靶场&#xff0c;sqlmap工具进行的post传参方式的SQL注入&#xff0c…...

SAM 2: Segment Anything in Images and Videos

Introduction 提出的目的&#xff1a; 1.现有的应用像自动驾驶&#xff0c;AR等来说都是需要temporal localization beyond image-level segmentation&#xff08;时序定位而不仅是图片分割&#xff09; 2. 一个好的分割模型不应该仅仅局限于图片领域&#xff0c;而是图视频两…...

软件测试面试,如何自我介绍?

又是一年金九银十&#xff0c;相信不少小伙伴都在准备跳槽面试&#xff0c;而面试中一个必不可少的环节就是自我介绍&#xff0c;所以&#xff0c;今天我们就来聊一聊软件测试面试中如何自我介绍。 为什么要自我介绍 在讨论如何自我介绍之前&#xff0c;我们先来讨论一下为…...

力扣第四十七题——全排列II

内容介绍 给定一个可包含重复数字的序列 nums &#xff0c;按任意顺序 返回所有不重复的全排列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,2] 输出&#xff1a; [[1,1,2],[1,2,1],[2,1,1]]示例 2&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[1,2,3],…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践

前言&#xff1a;本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中&#xff0c;跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南&#xff0c;你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案&#xff0c;并结合内网…...

Monorepo架构: Nx Cloud 扩展能力与缓存加速

借助 Nx Cloud 实现项目协同与加速构建 1 &#xff09; 缓存工作原理分析 在了解了本地缓存和远程缓存之后&#xff0c;我们来探究缓存是如何工作的。以计算文件的哈希串为例&#xff0c;若后续运行任务时文件哈希串未变&#xff0c;系统会直接使用对应的输出和制品文件。 2 …...

鸿蒙HarmonyOS 5军旗小游戏实现指南

1. 项目概述 本军旗小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;采用DevEco Studio实现&#xff0c;包含完整的游戏逻辑和UI界面。 2. 项目结构 /src/main/java/com/example/militarychess/├── MainAbilitySlice.java // 主界面├── GameView.java // 游戏核…...