算法4-中兴捧月杯热身赛1素数判断-热身赛2亲和串-热身赛3旅游路线-

article/2025/10/14 3:46:14

题目1:素数判断

需求
给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。输入描述:测试数据有多组,每组输入一个数n。输出描述:对于每组输入,若是素数则输出yes,否则输入no。
样例1:
输入:13输出:yes

代码

// idea_algorithm
package offer2;
import java.util.Scanner;
public class Test422 {public static void main(String[] args) {Scanner in = new Scanner(System.in);int n = in.nextInt();if(method(n)){System.out.println("yes");}else{System.out.println("no");}}public static Boolean method(int n){if(n <= 1 ){return false;}else{// 注意这里遍历得从2开始。双指针实现。for(int i = 2,j= n-1;i<= j; i++,j--){if(n%i == 0|| n%j == 0){return false;}}}return true;}
}

注意点

循环开始值是2

使用for循环遍历找n可以整除的数的时候,循环开始的点是2,因为0 不能当除数,1不是非素数与素数的区别。

题目2:亲和串

需求
人随着岁数的增长是越大越聪明还是越大越笨,这是一个值得全世界科学家思考的问题,
同样的问题Eddy也一直在思考,因为他在很小的时候就知道亲和串如何判断了,但是发现,现在长
大了却不知道怎么去判断亲和串了,于是他只好又再-次来请教聪明且乐于助人的你来解决这个问
题。亲和串的定义是这样的:给定两个字符串s1和s2,如果能通过s1循环移位,使s2包含在s1中,那
么我们就说s2是s1的亲和串。
输入描述:本题有多组测试数据,每组数据的第一行包含输入字符串s1,第 二行包含输入字符串s2,
s1与s2的长度均小于100000。
输出描述:如果s2是s1的亲和串, 则输出"yes",反之,输出"no"。每组测试的输出占-行。
样例1:
输入: AABCD
CDAA
输出: yes

代码

package offer2.Test423;import java.util.Scanner;public class Test423 {public static void main(String[] args) {Scanner in = new Scanner(System.in);String strSum = in.next();String strSon = in.next();if(method(strSum,strSon) != -1){System.out.println("yes");}else{System.out.println("no");}}public static int method(String strSum,String strSon){String s = strSum + strSum;if(strSum.length() == 0 || strSum == null || strSon == null || strSum.length()-strSon.length() <0){return -1;}else{int index = s.indexOf(strSon);return index;}}public static int method1(String strSum,String strSon){String s = strSum + strSum;if(strSum.length() == 0 || strSum == null || strSon == null || strSum.length()-strSon.length() <0){return -1;}else{Boolean b = s.contains(strSon);return 1;}}
}

注意点

java.util.NoSuchElementException: No line found 编译出现这个问题。

分析:
经过测试发现问题可能是定义一个Scanner对象,前后两个字符串输入的内容不一样,一个是字符串“abx”,另一个是数字字符串"123"。
其中前后两个串分别是“12345” “123” 这种形式可以正确执行。
解决:

Scanner sc = new Scanner(System.in);
String s = sc.next();
// 之前使用的是nextLine()。
Scanner 类的next和nextLine方法

Scanner类的方法

方法名说明
String next()查找并返回此扫描仪的下一个完整令牌
不接收空格,在接收有效数据之前,所有的空格或tab键投被忽略,若有有效数据,则遇到这些键退出
int nextInt()将输入的下一个标记扫描为int
String nextLine()将此扫描仪推进到当前行并返回跳过的输入
可以接收空格或tab键,输入以enter键结束

代码

// idea_algorithm 
package offer2.Test423;import java.util.Scanner;public class StringnextLineDemo {public static void main(String[] args) {method1();}public static void method(){Scanner input = new Scanner(System.in);String s1 = input.next();String s2 = input.next();System.out.println(s1);System.out.println(s2);System.out.println(s1 + s2);// 键盘输入ABC(空格)DEF(空格)(空格)// 输出结果是:// ABC// DEF// ABCDEF// 分析:没有接收空格,要是接收了空格,那么最后的输出应该会有空格,ABC 和 DEF 之间的空格被当做 两个字符串之间的划分,表示输入的是两个字符串}public static void method1(){Scanner input = new Scanner(System.in);String s1 = input.next();String s2 = input.next();String s3 = input.nextLine();System.out.println(s1);System.out.println(s2);System.out.println(s3);System.out.println(s1 + s2);System.out.println(s1 + s2 + s3);// 键盘输入A(空格)B(空格)C(空格)D(空格)// 输出结果是://A//B//(空格)C(空格)D(空格)//AB//AB(空格)C(空格)D(空格)// nextLine()方法可以接收空格或tab键。}
}
不是亲和串的特殊情况

首先两个字符串,一个是FatherStr,另一个是SonStr。
FatherStr 不能为空

FatherStr.length() == 0

FatherStr的长度 不能比 SonStr的长度 短,

FatherStr.length() - SonStr.length() < 0 

FatherStr 和 SonStr 都不能为null

FatherStr == null SonStr == null
子串属于父串使用的String类中的方法
方法名说明
Boolean contains(CharSequence s当且仅当此字符串包含指定的char值序列时才返回true
contains方法的参数可以是String类型
int indexOf(String str)返回指定子字符串第一次出现的字符串内的索引

题目3:旅游线路

题目描述:
2010年,世博会在中国上海举办,吸引了数以千万计的中外游客前来参观。暑假期间小Z也来到了上海世博园,她对世博园的拥挤早有所闻,对有的展馆甚至要排上好几个小时的队才能进入也做好了充分准备,但为了使得自己的世博之旅更加顺利舒畅,小Z决定在游玩之前先制定一份详细的旅行路线。
小Z搜集到了世博园的地图,她发现从整体上看世博园是-块非常狭长的区域,每一个展馆占用了其中一个几乎相同大小的方块。因此可以将整个园区看成一个n x m的矩阵(n≤3),其中每个格子为一个主题展馆。由于不同展馆受到的关注度会有一些差别, 因此排队时间的长短也不尽相同。
小Z根据统计信息给每一个展馆(x, y)标记了Tx,y = 0或1,
如果Tx,y= 1,表示这个展馆非常热门,需要排很长时间的队;
如果Tx,y= 0,表示这个展馆相对比较普通,几乎不需要排队即可进入参观。
小Z希望能够制定一份合理的路线,使得能交替参观热门馆和普通馆,既不会因为总是参观热门馆而长时间在排队,也不会因为总是参观普通馆而使得游览过于平淡。同时,小Z办事很讲究效率,她希望在游遍所有展馆的同时,又不会走冤枉路浪费体力。因此她希望旅行路线满足以几个限制:
在参观完位于(x, y)的展馆后,下一个参观的是一个相邻的且未被参观过的展馆(x’, y’),即|x-x’|+|y-
y’|=1;
路线的起点位于整个矩阵的边界上,即x= 1或x= n或y= 1或y= m;
她制定了一个长度为n*m的01列L,她希望第i个参观的展馆(x,y)满足Tx,y=Li。小Z想知道有多少条不同的旅行路线能
够满足她的要求。由于最终的结果可能很大,小Z只想知道可行的旅行路线总数 mod 11192869的值。
题目要求整理:

题目输入:
输入描述:第一行包含两个正整数n, m。第2行至第n+ 1行,每行有m个01整数,其中第i+ 1行第j个数表示 Tij。
第n+ 2行有n*m个01整数,其中第i个数表示Li的值。
输出描述:仅包含一个整数,表示可行的旅行路线总数 mod 11192869的值。
案例:
输入:
2 2
1 0
0 1
1 0 1 0
输出 4
xhj理解
在这里插入图片描述


http://chatgpt.dhexx.cn/article/8xld3Wty.shtml

相关文章

2021中兴捧月神算师算法赛,4-24第一场,第四题:D-换队伍,2021-4-28

第四题&#xff1a;D-换队伍 分析&#xff1a; 1.问题本身很简单&#xff0c;也只有两条队伍&#xff0c;一个队伍中的人换到另一个队伍的末尾。问题在于对其他人排队位置的保存和排序。 2.用什么数据结构进行保存&#xff0c;是一个很关键的问题&#xff0c;对问题解决的方法和…

中兴捧月算法挑战赛-RAW夜景图像去噪总结

最终排名 85/1159 网址&#xff1a;https://zte.hina.com/zte/denoise 无缘复赛&#xff0c;太菜了&#xff0c;不好意思说自己学去噪的了&#xff0c;代码会开源&#xff0c;但是感觉没什么人看吧 尝试过的模型 DnCNN&#xff1a;很差&#xff0c;0分UNet&#xff1a;很蓝…

2021中兴捧月神算师算法赛,4-24第一场,第二题:B - 切绳子,2021-4-27

第二题&#xff1a;B - 切绳子 题目如下图所示&#xff1a; 这道题目难度中等&#xff0c;但是有很多细节要注意。 分析&#xff1a; 1.首先数据类型问题&#xff0c; 1<n<1e18,这个显然超过了int的长度65535&#xff0c;需要使用big int 或者是long long 型进行定义…

中兴捧月算法-切绳子

中兴捧月算法-切绳子 题目描述 来源&#xff1a;牛客网 示例一&#xff1a;

中兴捧月比赛DIJKSTRA派算法说明

因为文章包含太多公式&#xff0c;无法复制&#xff0c;所以只能截图 我现在不知道怎么传源码&#xff0c;代码的话如果有人要&#xff0c;留言QQ 输出的次优解路径为&#xff1a; S->N2->N4->N5->N3->N7->N8->N14->N13->N12-…

2019中兴捧月·总决赛心得

2019中兴捧月总决赛心得 原文链接&#xff1a;https://hey-yahei.cn/2019/05/25/zte_challenge_final/ 赛题背景 与初赛类似&#xff0c;不过初赛更多关注的是加速&#xff0c;而总决赛更关注的是压缩。 原始模型是一个简单的3x112x112输入大小的resnet18&#xff0c;人脸识…

2020年中兴捧月傅里叶派决赛题目

目录 题目&#xff1a; 模型建立 题目分析 注意的小问题 计算结果 代码 模型改进和精细预测 写在最后 题目&#xff1a; 假设&#xff1a; 病毒正在一个居民总数为N100,000, 的城市里扩散。在我们研究的时间段内&#xff08;300天&#xff09;&#xff0c;没有新生儿…

2022中兴捧月算法挑战赛(RAW图像去噪)——初赛到决赛总结与反思

文章目录 1. 初赛经历&炼丹详情1.1 初赛经历1.2 炼丹详情 2、复赛经历&反思与总结2.1 复赛经历2.2 复赛反思 3、决赛经历&反思与总结3.1 决赛题目3.2 决赛思路总结3.3 冠军方案记录3.4 决赛经历3.5 决赛反思 1. 初赛经历&炼丹详情 1.1 初赛经历 最后分数57.2…

2020中兴捧月算法大赛迪杰斯特拉赛道初赛题解

目录 摘要1 程序中使用的数据结构1.1 几个基本数据类型1.2 车道(Lane)1.3 道路(Road)1.4 站点(Station)1.5 货物(Goods)1.6 系统资源(SystemResource)1.7 物流系统(LogisticsSystem) 2 算法思路2.1 初赛初版&#xff1a;路由表、深度优先搜索、路径惩罚2.1.1 搜索策略2.1.2 路径…

中兴捧月营销精英挑战赛回顾

先上图 为期四天的比赛结束了&#xff0c;把这次比赛的收获做一个总结和分享。希望能帮上后面有需要的同学吧。 主要内容分为比赛流程、决赛内容和心得体会三部分。 一.比赛流程 比赛流程分为三部分&#xff0c;初赛、复赛和决赛。初赛开始需要每位同学从瑞伊、加勒斯和奥格…

2023中兴捧月图像赛道-任意尺度盲超分初赛第三方案

任意尺度盲超分-初赛第三方案 吐槽篇方案篇一、左脚踩右脚二、梯度攻击 建议篇 吐槽篇 正文内容.正式讲述方案之前&#xff0c;容我先吐槽两句&#xff0c;真tm的是比赛&#xff0c;纯纯ex人。学历厂就别打着以赛招聘的口号&#xff0c;要985计算机的直接去他们学校里宣讲嘛&am…

中兴捧月之旅

上个月底&#xff0c;我怀着激动的心情来到古都西安参加了第十一届中兴捧月算法大赛的全国总决赛&#xff0c;因为这是我第一次参加的线下封闭开发的现场竞赛&#xff0c;特以此文记录这趟快乐的西安之旅。 中兴捧月是中兴通讯公司举办的大型算法比赛&#xff0c;今年共有6大赛…

2020中兴捧月算法大赛——傅里叶赛道 第1名方案

大家好&#xff0c;我是轶扬。 最近我在总结研究生阶段参与的一些项目和比赛&#xff0c;翻到了2020年参加的中兴捧月算法大赛&#xff0c;题目很有意思&#xff0c;解法上也有一些有趣的创新&#xff0c;所以拿出来特别记录一下。 中兴捧月算法大赛是中兴通讯公司主办的算法赛…

2023 中兴捧月算法挑战赛-自智网络-参赛总结

“中兴捧月”是由中兴通讯面向在校大学生举办的全球性系列赛事活动&#xff0c;致力于培养学生建模编程、创新、方案策划和团队合作能力。今年是在学校的宣传下了解到比赛&#xff0c;最初抱着学习的态度报名了比赛&#xff0c;最终进入了决赛&#xff0c;完成了封闭的开发与赛…

谈谈中兴捧月大赛决赛以及总结

前言 四月份&#xff0c;在师兄的推荐下&#xff0c;报名参加了中兴捧月大赛。一开始只是为了混一个面笔试的资格&#xff08;因为提交有效成绩即可免笔试&#xff09;&#xff0c;然后为了找一个简单的赛道&#xff0c;注册了几个号看了两三个赛道的题目。发现自己每个都不熟…

我得重新集结部队(模拟)

思路&#xff1a;感觉问题不大&#xff0c;不知道为啥一直WA WA代码&#xff1a; package 练习; import java.util.*; import java.io.*; import java.lang.*; public class Main{public static void main(String[] args) {Scanner scnew Scanner (System.in);int nsc.nextInt…

攻防演习紫队第一篇之介绍和组织

文章目录 0x01 什么是紫队0x02 如何组织攻防实战攻防演习一、实战攻防演习组织要素二、实战攻防演习组织形式三、实战攻防演习组织关键 摘抄 0x01 什么是紫队 ● 紫队&#xff0c;一般是指网络实战攻防演习中的组织方。 ● 紫队是在实战攻防演习中&#xff0c;以组织方角色&am…

java毕业设计民兵管理系统(附源码、数据库)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; Springboot mybatis Maven Vue 等等组成&#xff0c;B/…

哨兵数据的介绍

转载&#xff1a;[哨兵数据的介绍(http://www.spacemagazines.org/h-nd-193.html) “哨兵”卫星家族概览 据欧洲航天局网站2014年5月28日的报道&#xff0c;欧洲哨兵&#xff0d;1A&#xff08;Sentinel&#xff0d;1A&#xff09;卫星尽管还没有正式工作&#xff0c;但已为波…

创建Dota游戏中的兵营类(Barrack),创建3个兵营,通过控制台为每个兵营定义兵营名称,并指定该兵营需要创建的士兵人数。

上面图标里的这个类是创建的兵营类,下面的代码是兵营类的测试类: package com.xjc; /任务一&#xff0c; 1.创建Dota游戏中的兵营类&#xff08;Barrack&#xff09;&#xff0c;该类中有一个类成员变量count&#xff08;类属性&#xff09;、一个实例变量name和另一个实例变…