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

手机网站建设czyzj陕西有没有做网站好的公司

手机网站建设czyzj,陕西有没有做网站好的公司,天猫优惠券网站怎么做的,织梦网站怎样入侵蓝桥杯刷题——day4 题目一题干题目解析代码 题目二题干题目解析代码 题目一 题干 小蓝和朋友们在玩一个报数游戏。由于今年是2024 年,他们决定要从小到大轮流报出是20或24倍数的正整数。前10个被报出的数是:20,24,40,48,60,72,80,96,100,120。请问第2…

蓝桥杯刷题——day4

  • 题目一
    • 题干
    • 题目解析
    • 代码
  • 题目二
    • 题干
    • 题目解析
    • 代码

题目一

题干

小蓝和朋友们在玩一个报数游戏。由于今年是2024 年,他们决定要从小到大轮流报出是20或24倍数的正整数。前10个被报出的数是:20,24,40,48,60,72,80,96,100,120。请问第202420242024个被报出的数是多少?
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只输出这个整数,填写多余的内容将无法得分。
题目链接:报数游戏

题目解析

这道题目其实很简单,我们最先的想法是设立一个计数器,然后一个一个的遍历,只要满足数字整除20或者整除24,那么计数器就+1,但是这个方法会耗费很长的时间,我们可以将20×24看作一个轮回,先计算20到24之间的能整除20或者整除24的个数times,然后用202420242024除以times得到商和余数,商则表示经过了几个轮回,而余数则表示是这个轮回的第几个数字,那么将两者相加,就表示了第202420242024个数是什么了,问题解决,下面是完整的代码:

代码

import java.util.ArrayList;
public class Main {public static void main(String[] args) {ArrayList<Long> list = new ArrayList<>();long times = 0;for (Long i = 1L; i <= 480; i++) {if (i % 20 == 0 || i % 24 == 0) {list.add(i);times++;}}Long a = 202420242024L;Long tmp1 = a / times;int tmp2 = (int) (a % times);System.out.println(list.get(tmp2 - 1) + 480L * tmp1);}
}

题目二

题干

给定一个数组,每次操作可以选择数组中任意两个相邻的元素x,y 并将其中的一个元素替换为gcd(x,y),其中gcd(x,y) 表示x 和y 的最大公约数。请问最少需要多少次操作才能让整个数组只含1。
输入:
输入的第一行包含一个整数n,表示数组长度。第二行包含n 个整数,相邻两个整数之间用一个空格分隔。
输出:
输出一行包含一个整数,表示最少操作次数。如果无论怎么操作都无法满足要求,输出-1。
示例一:

输入:
3
4 6 9
输出:
4

题目链接:最大公约数

题目解析

这道题目关键是如何找出一个最小子串,该最小子串能够实现数组中的最大公约数为 1,什么意思?如果我们把一个子串中的一个元素变为了1,那么我们就可以根据这个1把数组的其他元素都变成1,什么意思?我们下面的图:
在这里插入图片描述
5和4的最大公倍数是1,那么我们就可以把其中的一个数字变成1,那么其他的也可以根据这个1变成1,就像病毒扩散一样,因此我们只需要找到一个数组里的最短子串,并且该最短子串能够实现最大公倍数为1就能够完成,因此我们完整的思路是:

  1. 计算整个数组的 GCD。如果 GCD 不为 1,直接输出 -1。
  2. 寻找最短的子数组,其 GCD 为 1,记为长度L。
  3. 最小操作次数为:n−1+(L−1),因为:n−1是将所有元素通过邻近操作将本身变为1的次数。(L−1)是在将子数组( GCD 为 1)其中一个元素变为1的操作次数。

下面是完整代码:

代码

import java.util.Scanner;
public class Demo {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);//输入数组的长度int n = scanner.nextInt();//输入数组的内容int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = scanner.nextInt();}System.out.println(minOperations(n, arr));}private static int minOperations(int n, int[] arr) {//判断整体的GCDint overallGCD = gcdArray(arr);if (overallGCD != 1) {return -1;// 如果整体GCD不是1,无论怎么操作都无法满足需求}//寻找最短子数组,其GCD为1int minLength = Integer.MAX_VALUE;for (int i = 0; i < n; i++) {int currentGCD = arr[i];for (int j = i; j < n; j++) {currentGCD = gcd(currentGCD, arr[j]);if (currentGCD == 1) {minLength = Math.min(minLength, j - i + 1);}}}//如果没有找到任何子数组GCD为1if (minLength == Integer.MAX_VALUE) {return -1;}return (n - 1) + (minLength - 1);}private static int gcdArray(int[] arr) {int result = arr[0];for (int i = 1; i < arr.length; i++) {result = gcd(result,arr[i]);if (result == 0){return 1;}}return result;}private static int gcd(int a, int b) {//计算两个数的GCDwhile (b != 0) {int tmp = b;b = a % b;a = tmp;}return a;}
}
http://www.yayakq.cn/news/263250/

相关文章:

  • 做设计到哪个网站赚钱庆阳网页设计背景
  • 那种网站后台最好平度网站制作
  • 嘉兴网站模板建站网站里怎样做物流跟踪功能
  • 学做网站的视频教学电商网站建设规划书
  • 网站服务器怎么优化wordpress 显示最新文章标题
  • 网站反向绑定域名163企业邮箱服务器
  • wordpress发布站点很多网站没有后台
  • wordpress如何做云盘搜索网站优化推广软件
  • 做网站头片的高清图广州行业门户网站建设
  • 政务网站设计方案企业网站建设发展历程
  • 有了网站 域名然后么做三原网站开发
  • 外卖网站建设文档东莞网站优化如何
  • 青岛开办公司要做网站吗中国交通建设集团属于什么企业
  • 专门做尾单的那个网站叫啥孵化基地网站怎么建设
  • 网站建设平台开发国家免费24小时律师咨询
  • 建设网站需要花多少钱搜一搜百度
  • 焦作有网站建设公司品牌的品牌推广设计
  • 昌平手机网站建设seo学徒是做什么
  • 百度做个网站多少钱手机网站开发库
  • 外贸网站怎样做黄山做网站
  • 仿模板电影网站专做实习生招聘的网站
  • 学网站开发需要学那些辽宁建设工程信息网停用
  • 网站关键词搜索优化怎么做微信小程序开发免费模板
  • 网站链接做投票wordpress分类目录路径
  • 织梦商城网站重庆商家网站
  • 网络建站公司源码中企动力邮箱手机登录设置
  • 做网站需要跟客户了解什么软件品牌设计公司起名
  • 十堰市建设网站的公司做类似58同城大型网站
  • 学网站建设与管理好吗临时手机号注册网站
  • 网站恶意攻击百度平台营销