【蓝桥杯-筑基篇】基础入门

news2024/11/15 10:41:05

🍓系列专栏:蓝桥杯

🍉个人主页:个人主页

目录

1.数位翻转

2.三个数求最大值的写法

3.两数交换的几种方法

4.身份证第18位合法性校验

5.黑洞数(陷阱数)


1.数位翻转

如: 整数 12345 返回结果为整数: 54321

当第一次看到这个题时,脑子里有3种反转方法:

​ 1、采用取余的方法,把每一位的值都抽取出来。

    public static void main(String[] args) {
        //如: 整数 12345 返回结果为整数: 54321
        int number=12345;
        int sum=0;
        while (number>0){
            sum=sum*10+number % 10;
            number=number/10;

        }
        System.out.println(sum);

    }

​ 2、第二种是把这个整数转换成一个数组,然后在进行反转。

    public static void main(String[] args) {
        //如: 整数 12345 返回结果为整数: 54321
        int number = 12345;
        String s = String.valueOf(number);
        char[] array = s.toCharArray();
        for (int i = array.length-1; i >=0; i--) {
            System.out.print(array[i]);
        }
    }

​ 3、第三种是 用   reverse() 进行字符串翻转

    public static void main(String[] args) {
        //如: 整数 12345 返回结果为整数: 54321
        int number = 12345;
        System.out.println(new StringBuilder(String.valueOf(number)).reverse().toString());


    }

2.三个数求最大值的写法

调用Math中的的max

public class Test {
    public static void main(String[] args) {
        int a=10;
        int b=5;
        int c=29;
        getMax(a,b,c);
    }

    private static void getMax(int a, int b, int c) {
        System.out.println(Math.max(Math.max(a, b), c));
    }

}

3.两数交换的几种方法

​ 1、定义一个临时变量

    public static void main(String[] args) {
        int a=10;
        int b=5;
        int temp=0;
        System.out.println("交换前:a:"+a+"  b:"+b);
        temp=a;
        a=b;
        b=temp;
        System.out.println("交换后:a:"+a+"  b:"+b);


    }

​ 2、采用加减法

    public static void main(String[] args) {
        int a=10;
        int b=5;
        System.out.println("交换前:a:"+a+"  b:"+b);
        a=a=b;
        b=a-b;
        a=a-b;
        System.out.println("交换后:a:"+a+"  b:"+b);


    }

​ 3、异或运算

    public static void main(String[] args) {
        int a=10;
        int b=5;
        System.out.println("交换前:a:"+a+"  b:"+b);
        a=a^b;
        b=a^b;
        a=a^b;
        System.out.println("交换后:a:"+a+"  b:"+b);


    }

4.身份证第18位合法性校验

身份证第18位(校验码)的计算方法

1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。

2、将这17位数字分别和系数相乘的结果相加。

3、用加出来的值  对11取余,看余数是多少。

4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。

5、通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2。

例如:某男性的身份证号码是34052419800101001X。我们要看看这个身份证是不是合法的身份证。

首先我们得出前17位的乘积和是189,然后用189除以11得出的结果是17+2/11,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的数字是x。所以,可以判定这是一个合格的身份证号码。

    public static void main(String[] args) {
        int[] weight={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
        String[] last={"1","0","X","9","8","7","6","5","4","3","2"};
        Scanner scanner = new Scanner(System.in);
        String idCard= scanner.nextLine();
        char[] array = idCard.toCharArray();
        int sum=0;
        for (int i = 0; i < array.length-1; i++) {
            sum=(array[i]-'0')*weight[i]+sum;
        }
        
        
        sum=sum%11;
        if (last[sum].equals(idCard.substring(17,18))){
            System.out.println("yes");
        }
        else System.out.println("no");


    }


 

5.黑洞数(陷阱数)

计算过程,给定一个数字,从大到小排列后减去从小到大排列,经过若干次运算后终得到一个固定的整数,三位数的黑洞495,四位数的黑洞6174等等。 

    public static void main(String[] args) {
        int number=2023;
        int count=0;

        while (true){
            String s = String.valueOf(number);
            int[] array = new int[s.length()];

            for (int i = 0; i < array.length; i++) {
                array[i] = Integer.parseInt(String.valueOf(s.charAt(i)));
            }
            System.out.println(Arrays.toString(array));
            Arrays.sort(array);
            System.out.println(Arrays.toString(array));
            int max=0;
            int min=0;

            for (int i = 0; i < array.length; i++) {
                min=array[i]+min*10;
            }
            for (int i = array.length-1; i >=0; i--) {
                max=max*10+array[i];
            }


            System.out.println(max+"  "+min);
            number=max-min;
            count++;
            if (count==20){
                break;
            }

        }







    }

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

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

相关文章

【零基础】学python数据结构与算法笔记7

文章目录前言41.查找排序部分习题42.查找排序习题143.查找排序习题244.查找排序习题345.查找排序习题4总结前言 学习python数据结构与算法&#xff0c;学习常用的算法&#xff0c; b站学习链接 41.查找排序部分习题 选题部分来自leetcode 42.查找排序习题1 242. 有效的…

蓝桥杯备赛Day6——链表

目录 数组的缺点 链表 单向链表 双向链表 Python链表的实现 手写链表 数组的缺点 1)需要占用连续的空间 若某个数组很大&#xff0c;可能没有这么大的连续空间给它用。 2〉不方便删除和插入 例如删除数组中间的一个数据&#xff0c;需要把后面所有的数据往前挪填补这个空…

CODESYS开发教程7-字符串及其基本操作

今天继续我们的小白教程&#xff0c;老鸟就不要在这浪费时间了&#x1f60a;。 前面一期我们介绍了CODESYS的关键字及变量。这一期主要介绍CODESYS的字符串类型&#xff0c;以及如何利用字符串操作函数来实现字符串的查找、插入、替换、连接、分割、删除等相关操作。注意本文介…

Realsense相机的RGB与depth图像的对齐

第三部分 将RGB图像和Depth图像对齐 文章目录第三部分 将RGB图像和Depth图像对齐前言一、创建对齐的cpp文件1.用vim创建C文件二、使用CMake构建C工程1.创建并编写CMakeList.txt文件2.编译CMakeLists.txt总结前言 将RGB图像和深度图像对齐有两种方式&#xff0c;一种是将深度图…

音视频开发-第一章-H264编解码

目录参考原文一、概述二、封装格式2.1、视频文件封装格式2.2、音视频编码方式2.2.1、视频编码方式2.2.2、音频编码方式三、H264相关概念3.1、H264基本单元3.2、帧类型3.3、GOP(画面组)3.4、IDR 帧四、H264压缩方式4.1、H264压缩方式4.2、H264压缩方式说明五、H264分层结构5.1、…

【websocket】前端websocket 实时通信

前端websocket 实时通信 文章目录前端websocket 实时通信什么是websocket为什么传统的http协议不能做到websocket实现的功能websocket前后端所用到的事件对比WebSocket.readyState代码什么是websocket websocket是HTML5开始提供的一种网络通信协议&#xff0c;它诞生的目的是在…

60条小妙招帮助你开车更省油

1、把备胎和千斤顶&#xff0c;工具&#xff0c;都放在家里&#xff0c;不跑长途不带这些&#xff0c;省油。2、说明书上说92号或以上标号&#xff0c;那么加95号油省油。如果是95或以上的标注&#xff0c;那就加98省油。3、驾驶中尽量减少急加速 急刹车&#xff0c;省油。4、驾…

Java——多态

好久不见啊&#xff0c;兄弟们&#xff01;&#xff01;这不将近期末考试了吗&#xff0c;阿涛平日里课听的不多&#xff0c;所以最近都在疯狂补课&#xff0c;祖宗之法也可变&#xff0c;阿涛的学校终于不是二十周校历了&#xff01;&#xff01;希望从今往后我们的生活都能够…

[oeasy]python0041_ 转义字符_转义序列_escape_序列_sequence

转义序列 回忆上次内容 上次回顾了5bit-Baudot博多码的来历从 莫尔斯码 到 博多码 原来 人 来 收发电报 现在 机器 来 收发电报 输入方式 从 电键改成 键盘 输出方式 从 纸带变成 打印纸张 后来 电传打字机ASR-33成为 初代 经典终端 除了 \n 和 \r 之外 还有什么 特殊字符 吗…

前端格式化工具使用(eslint、stylelint、prettier、lint-staged和husky搭配格式化代码)

目录 eslint 安装eslint .eslintrc.js env extends parser parserOptions rules globals plugins 屏蔽eslint检测具体规则 官方规则 stylelint 安装stylelint 创建stylelint配置文件 .eslintrc.js extends sass文件的格式检查 prettier 安装使用prettier …

Vue组件-插槽

一、插槽 1. 组件的三大核心&#xff1a;属性&#xff08;data、props&#xff09;、事件、插槽 2. 插槽&#xff08;slot&#xff09; 插槽&#xff08;slot&#xff09;将父组件的内容与子组件的模板相混合&#xff0c;从而弥补了视图的不足。 插槽的目的&#xff1a;使组件…

ConstraintLayout2

ConstraintLayout2ImageFilterView 属性 app:altSrc&#xff1a;altSrc提供的资源将会和src提供的资源通过crossfade属性形成交叉淡化效果。默认情况下,crossfade0&#xff0c;altSrc所引用的资源不可见,取值在0-1app:saturation&#xff1a;float型&#xff0c;默认1&#xf…

FPGA知识汇集-时钟系统的移植

ASIC 和FPGA芯片的内核之间最大的不同莫过于时钟结构。ASIC设计需要采用诸如时钟树综合、时钟延迟匹配等方式对整个时钟结构进行处理&#xff0c;但是 FPGA设计则完全不必。因为后者有内建的时钟资源:锁相环、频率综合器、移相器&#xff0c;以及具有低延迟特性的专用时钟布线网…

Unity基于状态机的架构与设计

我们做游戏的时候经常会有流程控制&#xff0c;流程控制的方法有很多&#xff0c;行为决策树&#xff0c;状态机等。本质差别都不大&#xff0c;就是把每一段执行逻辑做成一个一个的节点&#xff0c;根据条件执行某个节点&#xff0c;切换到某个节点。今天给大家分享一下基于状…

如何在VSCode中添加Python解释器并安装Python库

如何在VSCode中添加Python解释器并安装Python库作者介绍一&#xff0e; 安装VScode编辑器二&#xff0e; 安装Python解释器三&#xff0e; 在VScode中添加Python解释器四&#xff0e; 创建项目并在VScode中打开&#xff1b;五、在VScode中安装Python库作者介绍 孟莉苹&#xf…

【TypeScript入门】TypeScript入门篇——对象

对象其实就是一种封装的概念&#xff0c;它把事物封装成一个类&#xff0c;然后提供类的接口&#xff0c;而具体的过程人们是看不到的。 一、对象实例 二、TypeScript 类型模板 三、鸭子类型(Duck Typing) 对象是包含一组键值对的实例。 值可以是标量、函数、数组、对象等&am…

Linux常用命令——lsof命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) lsof 显示Linux系统当前已打开的所有文件列表lsof -p pid 补充说明 lsof命令用于查看你进程打开的文件&#xff0c;打开文件的进程&#xff0c;进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系…

十四、Node.js 中 session验证登录

在前一篇内容中讲到这个cookie实现验证登录&#xff0c;cookie是存储在客户端的&#xff0c;而session是存储在服务器的&#xff0c;相比较session的安全性会更高&#xff0c;session对象存储特定用户会话所需要的属性以及配置信息&#xff0c;服务通过session对象将用户的信息…

CPU使用率过高的原因及解决方法

常见的CPU使用率过高可不是职场CPU哦&#xff0c;而是电脑的中央处理器&#xff0c;CPU作为计算机系统重要的运算和控制核心&#xff0c;可谓是“很忙”的存在。在我们日常使用电脑设备时&#xff0c;由于打开的软件、游戏、网页等程序容易导致电脑运作卡顿&#xff0c;这时候就…

《图机器学习》-Traditional Methods for Machine Learning in Graphs

Traditional Methods for Machine Learning in Graphs前言一、Node-Level Tasks and Features二、Link-Level Tasks and Features三、Graph-Level Tasks and Features前言 图机器学习任务可以分为三种&#xff1a; Node-level prediction&#xff1a;节点级的预测 如对节点进…