蓝桥杯刷题4--数组和队列

目录:

1. 数组的应用–高精度

2. 队列


1. 数组的应用–高精度

        高精度算法就是大数的计算方法。超过64位的大数计算,Java和Python都能直接算。竞赛中常常用到很大的数组。强烈建议不要用动态分配,因为动态分配需要多写代码而且容易出错。定义为全局静态数组即可,而且不需要初始化为0,因为全局变量在编译时会自动初始化为全0注意全局变量和局部变量的初值。全局变量如果没有赋值,在编译时被自动初始化为0。在函数内部定义的局部变量,若需要初值为0,一定要初始化为0,否则可能为莫名其妙的值。

        Java计算大数,理论上可以计算“无限大”的数,只要不超内存。

【1】大数计算:输入两行表示两个整数。分别计算加、减、乘、除,分5行输出和、差、积、商、余数。

import java.math.BigInteger;
import java.util.Scanner; 
public class Main {     public static void main(String[] args) {Scanner sc=new Scanner(System.in);BigInteger a,b;a=sc.nextBigInteger();   b=sc.nextBigInteger(); System.out.println(a.add(b)); System.out.println(a.subtract(b));  System.out.println(a.multiply(b)); System.out.println(a.divide(b)); System.out.println(a.mod(b));    //如果b是负数,这里可能报错}                     
}

2. 队列

队列中的数据存取方式是“先进先出”,只能往队尾插入数据、从队头移出数据。 Java用LinkedList实现基本队列Queue。常用操作有:

【2】机器翻译

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);int capacity =scan.nextInt();int length = scan.nextInt();Queue<Integer> q = new LinkedList<>();int danci = 0;int chaxun = 0;for(int i =0;i<length;i++){danci = scan.nextInt();if(!q.contains(danci)){if(q.size()>=capacity){q.poll();}q.offer(danci);chaxun++;}}System.out.println(chaxun);scan.close();}
}

【3】餐厅排队

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);int cishu = scan.nextInt();Deque<Integer> duiwu = new LinkedList<>();for(int i = 0;i<cishu;i++){int caozuo = scan.nextInt();if(caozuo==1){int bianhao = scan.nextInt();duiwu.offer(bianhao);}else if(caozuo==2){duiwu.poll();}else{System.out.print(duiwu.peek() + " ");System.out.println(duiwu.getLast());}}scan.close();}
}

【4】小桥的神秘礼物盒

import java.util.*;
// 1:无需package
// 2: 类名必须Main, 不可修改public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);//在此输入您的代码...int cishu = scan.nextInt();Deque<Integer> duilie = new LinkedList<>();for(int i = 0;i<cishu;i++){int shuzi = scan.nextInt();if(shuzi == 1){int bianhao = scan.nextInt();duilie.offer(bianhao);}else if(shuzi == 2){if(duilie.size() == 0){System.out.println("lan");}else{duilie.poll();}}else if(shuzi == 3){if(duilie.size() == 0){System.out.println("qiao");}else{System.out.println(duilie.peek());}}else if(shuzi == 4){System.out.println(duilie.size());}}scan.close();}
}

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础(二)】进程管理

学习分享 1、程序和进程1.1、程序1.2、进程和进程ID 2、Linux下的进程结构3、init进程4、获取进程标识5、fork系统调用5.1、fork函数实例分析 6、进程的特性7、在Linux下进程指令7.1、终止进程指令7.2、查看进程指令&#xff1a;7.3、以树状图列出进程 8、多进程运行异常情况8.…

AI论文速读 | 【综述】城市计算中跨域数据融合的深度学习:分类、进展和展望

题目&#xff1a;Deep Learning for Cross-Domain Data Fusion in Urban Computing: Taxonomy, Advances, and Outlook 作者&#xff1a;Xingchen Zou, Yibo Yan, Xixuan Hao, Yuehong Hu, Haomin Wen&#xff08;温皓珉&#xff09;, Erdong Liu, Junbo Zhang&#xff08;张钧…

Latex公式太长换行标号

Latex中公式太长换行,且编号,可以采用align,不编号行公式用\nonumber,示例如下: \begin{align}\nonumber %第1行公式不编号&a+b+a+b+a+b+a+b+a+b+a+b+a+b+a\\&+c+d=m %第2行公式编号 \end{align}效果如下 原文件链接 公式不同命令的区别 \begin{align} 与 \…

element-plus upload上传

vue3 element-plus 2.4.3 <script> const submitUpload () > {// 单文件proxy.$refs["uploadRef"].submit(); }const uploadFile (options) > {let formData new FormData();formData.append("file", options.file)return uploadFileWith…

首发:鸿蒙面试真题分享【独此一份】

最早在23年华为秋季发布会中&#xff0c;就已经宣布了“纯血鸿蒙”。而目前鸿蒙处于星河版中&#xff0c;加速了各大互联网厂商的合作。目前已经有200参与鸿蒙的原生应用开发当中。对此各大招聘网站上的鸿蒙开发需求&#xff0c;每日都在增长中。 2024大厂面试真题 目前的鸿蒙…

从huggingface下载模型像本地加载但是UnicodeDecodeError

我自己是在Linux下出现了这个问题 原文&#xff1a;https://github.com/huggingface/transformers/issues/13674 The path for the AutoModel should be to a directory pointing to a pytorch_model.bin and to a config.json. Since you’re pointing to the .bin file dire…

Java多线程——synchronized、volatile 保障可见性

目录 引出synchronized、volatile 保障可见性Redis冲冲冲——缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Java多线程——synchronized、volatile 保障可见性 synchronized、volatile 保障可见性 原子性&#xff1a;在一次或者多次操作时…

实操keepalived(高可用)+Nginx(四层代理+七层代理),实现高可用、负载均衡以及动静分离

一 vrrp技术 VRRP 相关术语 VRRP能够在不改变组网的情况下&#xff0c;将多台路由器虚拟成一个虚拟路由器&#xff0c;i通过配置虚拟路由器的IP地址为默认网关&#xff0c;实现网关的备份。 协议版本: VRRPv2 (常用) 和VRRPv3:0 VRRPv2仅适用于IPv4网络&#xff0c;VRRPv3适用…

经典语义分割(二)医学图像分割模型UNet

经典语义分割(二)医学图像分割模型UNet 我们之前介绍了全卷积神经网络( FCN) &#xff0c;FCN是基于深度学习的语义分割算法的开山之作。 今天我们介绍另一个语义分割的经典模型—UNet&#xff0c;它兼具轻量化与高性能&#xff0c;通常作为语义分割任务的基线测试模型&#x…

hdu-2059(dp)

hdu-2059 龟兔赛跑 dp[i] 表示到第i个站所花费的最少时间&#xff0c;t[j][k]表示在第j个站充满电&#xff0c;直接开到第k个站所花的时间&#xff0c;那么状态转移为: dp[i] min(dp[i], dp[j] t[j][i]) 含义为&#xff0c;假设我们当前想知道到达第i个站的最少时间&#xff…

Java定时调度范式定时操作

在 Java 中&#xff0c;我们可以使用各种方法来执行定时操作。这些操作包括执行任务、调度任务、执行重复任务等。下面将介绍几种常见的 Java 定时调度范式。 1. Timer 和 TimerTask Java 提供了 Timer 和 TimerTask 类&#xff0c;用于执行定时任务。 示例代码&#xff1a;…

RK3568平台 USB数据包的收发格式

一.USB硬件拓扑结构 compound device &#xff1a;多个设备组合起来&#xff0c;通过HUB跟Host相连composite device &#xff1a;一个物理设备有多个逻辑设备(multiple interfaces) 在软件开发过程中&#xff0c;我们可以忽略Hub的存在&#xff0c;硬件拓扑图简化如下&#x…