第十五届蓝桥杯模拟赛(第二期)JAVA

这篇具有很好参考价值的文章主要介绍了第十五届蓝桥杯模拟赛(第二期)JAVA。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(做的时候忘记小题截图了,没有题目,个人答案,可能会有问题)

1. 108

2.608

public class Main_2 {
    public static void main(String[] args) {
        int x=1;
        for (int i=1;i<=2023;i++){
            if(x*2<1000){
                x*=2;
                System.out.println("第"+i+"次"+x);
            }else {
                x=(x*2)%1000;
                System.out.println("第"+i+"次"+x);
            }
        }
    }
}

3.4169

public class Main_3 {
    public static void main(String[] args) {
        int cnt=1;
        for(int i=1;i<=10000;i++){
            int c1=i;
            int c2=i;
            int sum1=0;
            int sum2=0;
            while(c1/2!=0){
                sum1+=c1%2;
                c1/=2;
            }
            sum1+=c1;
            while(c2/8!=0){
                sum2+=c2%8;
                c2/=8;
            }
            sum2+=c2;
            if(sum2==sum1){
                if(cnt==23){
                    System.out.println("第"+cnt+"次"+i);
                }
                cnt++;
            }
        }
    }
}

4.901440

public class Main_4 {
    public static void main(String[] args) {
        String s="393353 901440 123481 850930 423154 240461 373746 232926 396677 486579 744860 468782 941389 777714 992588 343292 385198 876426 483857 241899 544851 647930 772403 109929 882745 372491 877710 340000 659788 658675 296521 491295 609764 718967 842000 670302";
        String[] n=s.split(" ");

        int ans=-1;
        int result=0;
        for (int i=0;i<n.length;i++){
            int x=Integer.parseInt(n[i]);
            int cnt=0;
            for(int j=1;j<=x;j++){
                if(x%j==0)
                    cnt++;
            }
            if(cnt>ans){
                ans=cnt;//约数个数
                result=x;//答案
            }

        }
        System.out.println(result);
    }
}

5.541(有问题,看错题目了)

import java.util.LinkedList;
import java.util.Queue;

public class Main_5 {
    static String[] op;
    static  char[][] str = new char[40][];
    static int[] dx={-1,0,1,0};
    static int[] dy={0,1,0,-1};
    static int n=30;
    static int m=40;
    static void bfs(){
        Queue<int[]>queue=new LinkedList<>();
        queue.add(new int[]{0,0});
        while (!queue.isEmpty()){
            int[] t= queue.poll();

            for(int i=0;i<4;i++){
                int x=t[0]+dx[i];
                int y=t[1]+dy[i];

                if(x>=0&&x<n&&y>=0&&y<m&&str[x][y]=='0'){
                    str[x][y]='2';
                    queue.add(new int[]{x,y});
                }
            }
        }
    }
    public static void main(String[] args) {
        String s="0000100010000001101010101001001100000011\n" +
                "0101111001111101110111100000101010011111\n" +
                "1000010000011101010110000000001011010100\n" +
                "0110101010110000000101100100000101001001\n" +
                "0000011010100000111111001101100010101001\n" +
                "0110000110000000110100000000010010100011\n" +
                "0100110010000110000000100010000101110000\n" +
                "0010011010100110001111001101100110100010\n" +
                "1111000111101000001110010001001011101101\n" +
                "0011110100011000000001101001101110100001\n" +
                "0000000101011000010011111001010011011100\n" +
                "0000100000011001000100101000111011101100\n" +
                "0010110000001000001010100011000010100011\n" +
                "0110110000100011011010011010001101011011\n" +
                "0000100100000001010000101100000000000010\n" +
                "0011001000001000000010011001100101000110\n" +
                "1110101000011000000100011001001100111010\n" +
                "0000100100111000001101001000001010010001\n" +
                "0100010010000110100001100000110111110101\n" +
                "1000001001100010011001111101011001110001\n" +
                "0000000010100101000000111100110010101101\n" +
                "0010110101001100000100000010000010110011\n" +
                "0000011101001001000111011000100111010100\n" +
                "0010001100100000011000101011000000010101\n" +
                "1001111010010110011010101110000000101110\n" +
                "0110011101000010100001000101001001100010\n" +
                "1101000000010010011001000100110010000101\n" +
                "1001100010100010000100000101111111111100\n" +
                "1001011010101100001000000011000110110000\n" +
                "0011000100011000010111101000101110110001";
        op=s.split("\n");
       
        for(int i=0;i< op.length;i++){
            str[i]=op[i].toCharArray();
        }

        bfs();

        int cnt=0;

        for(int i=0;i<30;i++){
            for(int j=0;j<40;j++){
                if(str[i][j]=='2')
                    cnt++;
            }
        }
        System.out.println(cnt);
    }
}

6.

问题描述
  给定一个正好六位的正整数 x,请将 x 循环左移一位后输出。
  所谓循环左移一位,是指将原来的十万位变为个位,原来的万位到个位向左移动依次变为十万位到十位。
  例如:194910 左移一位变为 949101 。
  又如:987123 左移一位变为 871239 。
输入格式
  输入一行包含一个整数 x 。保证输入的 x 正好包含 6 个十进制数位,而且十万位和万位上的数字均不为 0 。
输出格式
  输出一行包含一个整数,表示答案。
样例输入
194910
样例输出
949101

import java.util.Scanner;

public class Main_6 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String op= sc.next();
        char[] str=op.toCharArray();
        for(int i=1;i<str.length;i++){
            System.out.print(str[i]);
        }
        System.out.print(str[0]);
    }
}

7.问题描述
  输入一个仅包含小写英文字母的字符串,请问这个字符串中的最后一元音是什么。
  在英文中,a, e, i, o, u 共 5 个字母是元音字母,其它字母不是元音字母。
输入格式
  输入一行包含一个字符串,仅由小写英文字符组成,字符串中至少包含一个元音字母。
输出格式
  输出一行包含一个字符,表示答案。
样例输入
lanqiao
样例输出
o
样例输入
cup
样例输出
u

import java.util.Scanner;

public class Main_7 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String op= sc.next();
        char[] str=op.toCharArray();
        char reslut = 0;
        for(int i=0;i<str.length;i++){
            if(str[i]=='a'||str[i]=='e'||str[i]=='i'||str[i]=='o'||str[i]=='u'){
                reslut=str[i];
            }
        }
        System.out.println(reslut);
    }
}

8.1、问题描述:
  给定一个整数,对这个整数的一次转换是指将这个整数变为这个整数的所有数位上的非零数字的乘积。
  例如,对 123456789 进行一次转换变为 1*2*3*4*5*6*7*8*9=362880,再进行一次转换变为 3*6*2*8*8=2304,再进行一次转换变为 2*3*4=24,再进行一次转换变为 8。
  给定一个整数,请依次将转换过程中经历的每个整数输出,直到小于 10 。
2、输入格式:
  输入一行包含一个整数 n 。
3、输出格式:
  输出多行,每行包含一个整数。
4、样例输入:
123456789
5、样例输出:
362880
2304
24
8
6、评测用例规模与约定:
  对于 50% 的评测用例,1 <= n <= 10**9 (10的9次方)。
  对于所有评测用例,1 <= n <= 10**18 (10的18次方)。
 

import java.util.Scanner;

public class Main_8 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String op=sc.next();
        long x= Long.parseLong(op);
        char[] str=op.toCharArray();
        while(x>10){
            int sum=1;
            for(int i=0;i<str.length;i++){
                if(str[i]!='0'){
                    sum*=Integer.parseInt(String.valueOf(str[i]));
                }
            }
            String po= String.valueOf(sum);
            str=po.toCharArray();
            x=sum;
            System.out.println(sum);
        }
    }
}

9.1、问题描述:
  小蓝站在一个 n 行 m 列的方格图中间,方格图的每一个方格上都标有一个正整数。
  如果两个相邻方格(上下左右四个方向相邻)内的数的最大公约数大于 1 ,则可以从其中一个方格移动到另一个方格,当然也可以从另一个方格移回第一个方格。
  假设小蓝开始时站在第 r 行第 c 列,请问小蓝可以移动到方格图内的多少个方格?
2、输入格式:
  输入的第一行包含两个整数 n, m ,用一个空格分隔,表示方格图的行数和列数。
  接下来 n 行,每行包含 m 个正整数,相邻整数间用一个空格分隔,依次表示方格图中从第 1 行到第 n 行,每行从第 1 列到第 m 列中的数。
  接下来一行包含两个整数 r, c,用一个空格分隔,表示小蓝所在的行号和列号。
3、输出格式:
  输出一行包含一个整数,表示答案。
4、样例输入:
3 4
3 6 5 5
2 4 3 5
7 8 3 8
3 2
5、样例输出:
5
6、评测用例规模与约定:
  对于50%的评测用例,1 <= n, m <= 100,方格图中的每个数不超过 10**5 (10的5次方)。
  对于所有评测用例,1 <= n, m <= 1000,方格图中的每个数不超过 10**9 (10的9次方)。
 

import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Main_9 {
    static int n,m;
    static int N=1000;
    static int[][] str=new int[N][N];
    static int f_x,f_y;
    static int[] dx={-1,0,1,0};
    static int[] dy={0,1,0,-1};
    static int ans=0;
    static boolean[][] st=new boolean[N][N];
    static boolean judge(int x,int y){
        int p=Math.min(x,y);
        for(int i=2;i<=p;i++){
            if(x%i==0&&y%i==0)
                return true;
        }
        return false;
    }
    static void bfs(){
        Queue<int[]>queue=new LinkedList<>();
        queue.add(new int[]{f_x,f_y});

        while (!queue.isEmpty()){
            int[] t=queue.poll();

            for(int i=0;i<4;i++){
                int x=t[0]+dx[i];
                int y=t[1]+dy[i];
                if(x>0&&x<=n&&y>0&&y<=m&&
                        judge(str[t[0]][t[1]],str[x][y])
                && !st[x][y]){
                    st[x][y]=true;
                    ans++;
                    queue.add(new int[]{x,y});
                }
            }
        }
    }
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        n=sc.nextInt();
        m=sc.nextInt();
        for(int i=1;i<=n;i++){
            for(int j=1;j<=m;j++){
                int x=sc.nextInt();
                str[i][j]= x;
            }
        }
        f_x=sc.nextInt();
        f_y=sc.nextInt();

        bfs();

        System.out.println(ans);
    }
}

10.1、问题描述:
  给定一个序列 a[1], a[2], …, a[n] 和一个整数 k,请找出一个长度正好为 k 的区间,使得区间中所有数的和最大。
  即要找到一个整数 p ,使得 1 <= p 且 p+k-1 <= n ,使得 a[p]+a[p+1]+...+a[p+k-1] 最大。
2、输入格式:
  输入的第一行包含两个整数 n , k。
  第二行包含 n 个整数,相邻的整数之间使用一个空格分隔,表示给定的序列。
3、输出格式:
  输出一行包含一个整数,表示最大的区间和,你只需要输出和就行,不需要输出方案。
4、样例输入:
6 3
2 3 9 1 9 5
5、样例输出:
19
6、评测用例规模与约定:
  对于 30% 的评测用例,1 <= k <= n <= 30,1 <= a[i] <= 100。
  对于 60% 的评测用例,1 <= k <= n <= 1000,1 <= a[i] <= 10000。
  对于所有评测用例,1 <= k <= n <= 100000,1 <= a[i] <= 1000000。
 

import java.util.Scanner;

public class Main_10 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n,k;
        n=sc.nextInt();
        k=sc.nextInt();
        int[] st = new  int[1000010];
        for(int i=1;i<=n;i++)
            st[i]=sc.nextInt();

        long ans=0;
        for(int i=1;i<=n-k;i++){
            long x=st[i]+st[i+1]+st[i+2];
            if(x>ans)ans=x;
        }
        System.out.println(ans);
    }
}

大题题目来源文章来源地址https://www.toymoban.com/news/detail-757176.html

到了这里,关于第十五届蓝桥杯模拟赛(第二期)JAVA的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【蓝桥杯 第十五届模拟赛 Java B组】训练题(A - I)

     目录 A、求全是字母的最小十六进制数 B、Excel表格组合 C、求满足条件的日期 D、 取数字 - 二分 (1)暴力 (2)二分 E、最大连通块 - bfs F、哪一天? G、信号覆盖 - bfs (1)bfs(60%) (2)暴力 H、清理水域 - 暴力(弱智版) 可以差分 I、滑行 - dfs + dp (1)dfs(30%) (2)

    2024年02月05日
    浏览(53)
  • 第十五届蓝桥杯模拟赛(第一期)

    大家好,我是晴天学长,本次分享,制作不易,需要的小伙伴可以点赞关注评论一波哦!后续会继续更新第二期第三期的。💪💪💪 问题描述 请找到一个大于 2022 的最小数,这个数转换成十六进制之后,所有的数位(不含前导 0)都为字母(A 到 F)。 请将这个数的十进制形

    2024年02月04日
    浏览(65)
  • 第十五届蓝桥杯模拟赛(第一期)Python

    创作不易,欢迎小伙伴们关注、点赞+收藏! 问题描述 请找到一个大于 2022 的最小数,这个数转换成十六进制之后,所有的数位(不含前导 0)都为字母(A 到 F)。 请将这个数的十进制形式作为答案提交。 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可。本

    2024年02月05日
    浏览(74)
  • 第十五届蓝桥杯模拟赛(第一期 C++)

    问题描述 请找到一个大于 2022 的最小数,这个数转换成十六进制之后,所有的数位(不含前导 0)都为字母(A 到 F)。请将这个数的十进制形式作为答案提交。    答案: 2730 思路分析: 直接暴力秒了 问题描述 在 Excel 中,列的名称使用英文字母的组合。前 26 列用一个字母

    2024年02月05日
    浏览(54)
  • 【蓝桥杯Web】第十五届蓝桥杯(Web 应用开发)模拟赛 2 期 | 全部题解

    感觉蓝桥杯的模拟赛一次比一次难了😑 制作不易,代码都是纯手敲,觉得有帮助的伙伴们记得点个赞评论一下,谢谢大家支持😍 话不多说直接上答案 目录 1、想不相等 2、三行情书 3、电影院在线订票 4、老虎机 5、星际通讯 6、蓝桥杯排位赛 7、拼出一个未来 8、超能英雄联

    2024年02月05日
    浏览(55)
  • 第十五届蓝桥杯(Web 应用开发)模拟赛 2 期-大学组(详细分析解答)

    目录  1.相不相等 1.1 题目要求 1.2 题目分析 1.3 源代码 2.三行情书 2.1 题目要求 2.2 题目分析 2.3 源代码 3.电影院在线订票 3.1 题目要求 3.2 题目分析 3.3 源代码  4.老虎坤(不然违规发不出来) 4.1 题目要求 4.2 题目分析 4.3 源代码 5.星际通讯 5.1 题目要求 5.2 题目分析 5.3 源代码

    2024年02月05日
    浏览(47)
  • 2023第十四届蓝桥杯模拟赛第二期个人题解(Java实现)

    2023第十四届蓝桥杯校内模拟赛第三期个人题解(Java实现) 蓝桥杯真题——单词分析(Java实现) 这篇文章为个人题解,假如我写的解法有误,欢迎大家在评论区指正👏👏!!!希望这篇文章对你有帮助❤❤ 请找到一个大于 2022 的最小数,这个数转换成二进制之后,最低的

    2023年04月23日
    浏览(166)
  • 2022 第十四届蓝桥杯模拟赛第二期题目题解(比赛时使用方法)

    目录 第一题:最小的2022 第二题:经过天数 第三题:特殊的十六进制数 第四题:矩阵的最小路径 第五题:质数拆分 第六题:拷贝时间 第七题:单词去重 第八题:最短回文串 第九题:多少个X? 第十题:最小交换 问题描述 请找到一个大于 2022 的最小数,这个数转换成二进

    2023年04月11日
    浏览(71)
  • 【蓝桥杯Web】大一小白参与蓝桥杯模拟赛二期web组体会

    目录 前言 一、相关比赛介绍 1.ACM国际大学生程序设计竞赛 2.蓝桥杯 3.GPLT团队程序设计天梯赛 4.leetcode周赛和双周赛 5.PAT 二、蓝桥杯 1.应该参加蓝桥杯吗? 2.如何进行蓝桥杯的准备 三.蓝桥杯模拟赛二期web组真题 1.凭空消失的TA(简单) 2.用户名片(简单) 3.芝麻开门(中等)

    2023年04月08日
    浏览(45)
  • 第十四届蓝桥杯模拟赛(第三期)(大学B组)Java组

    修改了第六题余数为0时输出应为7的问题 修改了第五题和第九题可能超时的问题 前些天参加了第十四届蓝桥杯模拟赛(第三期),收获颇丰,自己也走了一点点弯路,记录一下自己考试中犯的一些错误。也希望在这期间可以提高一下自己的编程水平。 纯小白大佬请喷! 问题

    2023年04月24日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包