蓝桥杯13届JAVA A组 国赛

​​​​​​​

package 蓝桥杯国赛;
// 贪心选个数最少的进行摆
// 2:1 ,3:1, 4:1,5 : 3,6:3,7:1
// 选 1,7,4,2,3,5,9
// 然后都选满10个
public class 火彩棒数字 {public static void main(String[] args){System.out.print("9999999999777777777755555555554444444444333333333322222222221111111111");}
}

package 蓝桥杯国赛;
import java.util.Scanner;
//1:无需package
//2: 类名必须Main, 不可修改
//C28 * f[i] 错排公式//f[i] = (i - 1) (f[i - 1] + f[i - 2])public class 小蓝与钥匙 {static int N = 100;static long[] f = new long[N];public static void main(String[] args) {long ans = 1;f[2] = 1; for(int i = 3;i < N;i++)f[i] = (i - 1) * (f[i - 1] + f[i - 2]);for(long i = 0;i < 14;i++)ans = ans * (28 - i) / (i + 1);System.out.println(ans * f[14]);}
}

 

package 蓝桥杯国赛;
import java.util.Scanner;public class 内存空间 {public static void main(String[] args) {Scanner in=new Scanner(System.in);int t=in.nextInt();long sum=0;in.nextLine();while(t-->0){String []s=in.nextLine().split(" ");if(s[0].equals("int")){String[]s1=s[1].split(",");sum+=4*s1.length;}else if(s[0].equals("long")){String[]s1=s[1].split(",");sum+=8*s1.length;}else if(s[0].equals("String")){String[]s1=s[1].split(",");for(String ss:s1){int index=ss.indexOf("\"");int tmp=ss.indexOf("\"",index+1)-index-1;sum+=tmp;}}else if(s[0].equals("int[]")) {for(int i=2;i<s.length;i++){int l=s[i].indexOf("[");int r=s[i].indexOf("]");int tmp=Integer.parseInt(s[i].substring(l+1,r));sum+=4*tmp;}}else if(s[0].equals("long[]")) {for(int i=2;i<s.length;i++){int l=s[i].indexOf("[");int r=s[i].indexOf("]");int tmp=Integer.parseInt(s[i].substring(l+1,r));sum+=8*tmp;}}}long gb,mb,kb,k;gb=sum/1024/1024/1024;mb=sum%(1024*1024*1024)/1024/1024;kb=sum%(1024*1024)/1024;k=sum%1024;String res="";if (gb != 0)res += gb + "GB";if (mb != 0)res += mb + "MB";if (kb != 0)res += kb + "KB";if (k != 0)res += k + "B";System.out.println(res);}}

 

package 蓝桥杯国赛;import java.util.Scanner;
// 由之前算出当n > 30 f[] > 1e6public class 斐波那契数组 {static int N = 100100;static int[] f = new int[N],a = new int[N];public static void main(String[] args){f[1] = 1;f[2] = 1;for(int i = 3;i <= 30;i++)f[i] = f[i - 1] + f[i - 2];Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();for(int i = 1;i <= n;i++)a[i] = scanner.nextInt();int ans = 0,m = n;if(n > 30) n = 30;for(int i = 1;i <= n;i++) {int cnt = 0;if(a[i] % f[i] == 0) {int t = a[i] / f[i];for(int j = 1;j <= n;j++)if(f[j] * t == a[j]) cnt++;ans = Math.max(ans,cnt);}}System.out.print(m - ans);}
}

 

package 蓝桥杯国赛;
import java.util.*;
// 特殊的dijkstra
// dijkstra是每个选取最小的,如果弹出的节点已径扩展过了,就continue
// 然后扩展每个点计算经过该点的最短路径,如果小于就原最短路径,则入堆
// 这里特殊的边权值是动态变化的
// tt < g 则当前路口为绿灯
// g < tt < g + d 则当前路口为黄灯且下一个灯为红灯
// g + d < tt < g + d + r 则当前路口为红灯
// g + d + r < tt < g + 2d + r 则当前路口为黄灯且下一个灯为绿灯 
public class 交通信号 {static final int N = 1000010, M = 4 * N;static int[] h = new int[N], e = new int[M], ne = new int[M], g = new int[M], r = new int[M], d = new int[M], f = new int[M];static long[] times = new long[N];static int idx = 0;static void add(int a, int b, int green, int red, int dist, int flag) {e[idx] = b; g[idx] = green; r[idx] = red;d[idx] = dist; ne[idx] = h[a]; f[idx] = flag; h[a] = idx++;}static long dijkstra(int n, int m, int s, int t) {Arrays.fill(times, Long.MAX_VALUE);times[s] = 0;PriorityQueue<Pair> pq = new PriorityQueue<>((a,b) -> Long.compare(a.dist,b.dist));pq.offer(new Pair(s, 0));while (!pq.isEmpty()) {Pair pair = pq.poll();int u = pair.node;long dist = pair.dist;if (dist > times[u]) continue;for (int i = h[u]; i != -1; i = ne[i]) {int j = e[i];long gr = g[i], re = r[i], di = d[i], fl = f[i];long tot = gr + re + 2 * di;long curt = dist % tot;if (fl == 1) curt = curt >= gr ? tot - curt : 0;else curt = curt >= gr + di && curt < gr + di + re ? 0 : curt < gr + di ? gr + di - curt : tot - curt + gr + di;long newDist = dist + curt + di;if (newDist < times[j]) {times[j] = newDist;pq.offer(new Pair(j, newDist));}}}return times[t] > Long.MAX_VALUE / 2 ? -1 : times[t];}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt(),m = scanner.nextInt();int s = scanner.nextInt(),t = scanner.nextInt();Arrays.fill(h, -1);for (int i = 0; i < m; i++) {int a = scanner.nextInt(), b = scanner.nextInt();int green = scanner.nextInt(),red = scanner.nextInt();int dist = scanner.nextInt();add(a, b, green, red, dist, 1); add(b, a, green, red, dist, 0);}System.out.println(dijkstra(n, m, s, t));}static class Pair {private final int node;private final long dist;public Pair(int node, long dist) {this.node = node;this.dist = dist;}}    
}

import java.util.*;public class Main {static final int MAXV = 10;static final int mod = 1000000007;static int solve(int[] B, int N) {int[][][] f = new int[2][MAXV][MAXV];int cur = 0, ans = 0;for (int i0 = 0; i0 < MAXV; ++i0) {for (int i1 = 0; i1 < MAXV; ++i1) {cur = 0;Arrays.stream(f[cur]).forEach(arr -> Arrays.fill(arr, 0));f[cur][i0][i1] = 1;for (int i = 2; i < N; i++) {cur ^= 1;Arrays.stream(f[cur]).forEach(arr -> Arrays.fill(arr, 0));for (int A0 = 0, prev = cur ^ 1; A0 < MAXV; ++A0) {for (int A1 = 0; A1 < MAXV; ++A1) {if (f[prev][A0][A1] == 0) continue;for (int A2 = 0; A2 < MAXV; ++A2) {if (Math.max(Math.max(A0, A1), A2) != B[i - 1]) continue;if (i == N - 1) {if (Math.max(Math.max(A1, A2), i0) != B[i] || Math.max(Math.max(i0, i1), A2) != B[0]) continue;}f[cur][A1][A2] += f[cur ^ 1][A0][A1];f[cur][A1][A2] %= mod;}}}}for (int A0 = 0; A0 < MAXV; ++A0) {for (int A1 = 0; A1 < MAXV; ++A1) {ans += f[cur][A0][A1];ans %= mod;}}}}return ans;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int N = scanner.nextInt();int[] B = new int[N];for (int i = 0; i < N; ++i) {B[i] = scanner.nextInt();}System.out.println(solve(B, N));}
}

package 蓝桥杯国赛;
import java.util.*;
//本题使用bigInteger会超时
//可以利用位运算找规律
//1
//121
//12321
//1234321
//123454321
//12345654321//一共有2n-1位,
// 当i <= n 时
// 从右往左第i行,这一行有n - i + 1个 i,上面是i - 2,i - 4,.... 2(或1)
// 这一位是[(n - i + 1) * i + k] k = i/2*(i - 2)/2 或 k = (i-1) / 2*(i - 1)/2
// 当 i > n 时
// 末尾为奇数时对1到末尾相加,为偶数时0 到 n 相加public class 六六大顺 {public static void main(String[] args){Scanner scanner = new Scanner(System.in);long n = scanner.nextLong();StringBuilder x = new StringBuilder();long carry = 0, t;for (long i = 1; i <= n; i++) {t = (n - i + 1) * i;if (i % 2 == 0) t += i * (i - 2) / 4;else t += (i - 1) * (i - 1) / 4;t = t * 36 + carry;x.append(t % 10);carry = t / 10;}for (long i = n + 1; i < 2 * n; i++) {long last_value = 2 * n - i;long cnt = (last_value + 1) / 2;if (i % 2 == 0) t = (last_value + 2) * cnt / 2;else t = (last_value + 1) * cnt / 2;t = t * 36 + carry;x.append(t % 10);carry = t / 10;}x.append(carry);System.out.println(x.reverse().toString());}
}

 

package 蓝桥杯国赛;import java.util.Scanner;//x的上一层的取值范围y 为 12 ~ 22,且为合数
//当y 为 12 :9 ~ 12
//当y 为 14 :14 - 7 + 1 = 8
//当y 为 15 :15 - 5 + 1 = 9
// ····// 第一步求x 最大素数 z(如果是质数,就-1)
// y的取之范围为 (x - z + 1, x ),y为合数
// 然后在求区间中➖最大素数 + 1 最大的数 
public class 选素数 {static boolean is_prime(int n){if(n <= 1) return false;for(int i = 2;i <= n / i;i++)if(n % i == 0) return false;return true;}static int lpf(int n){int ans = 2;for(int i = 2; i <= n/i;i++){while(n % i == 0){ans = i;n /= i;}}return ans;}public static void main(String[] args){Scanner scanner = new Scanner(System.in);int x = scanner.nextInt();if(is_prime(x)) {System.out.println(-1);}else {int z = lpf(x);int l = x - z + 1;int ans = (int)2e6;for(int i = l;i <= x;i++) {if(is_prime(i)) continue;ans = Math.min(ans,i - lpf(i) + 1);}System.out.println(ans);}}
}

国赛ac难度是大于省赛的,最后俩题放弃了

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

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

相关文章

游戏行业被攻击的原因、攻击种类及合适的服务器

很多游戏刚上线没多久就频繁遭到同行恶意攻击。在相关数据报告中&#xff0c;2023年上半年遭受DDoS攻击的行业中&#xff0c;游戏行业占到40%&#xff0c;而且攻击方式、攻击频率、攻击峰值呈明显上升趋势。很多充满创意的游戏开发公司刚才开发上线一个很有特色的产品&#xff…

安卓实现视频录制与显示和翻转摄像头

权限&#xff1a; <!-- 相机权限 --> <uses-featureandroid:name"android.hardware.camera"android:required"false" /> <uses-permission android:name"android.permission.CAMERA" /><!-- 录音权限&#xff08;包括麦克…

Centos 7.9 配置VNCServer实现远程vnc连接

文章目录 1、Centos安装图形界面1.1、安装X Windows System图形界面1.2、安装GNOME图形界面 2、VNC SERVER配置2.1、VNC SERVER安装2.2、VNC SERVER配置1&#xff09;创建vnc配置文件2&#xff09;修改配置文件内容3&#xff09;完整配置文件参考 2.3、设置vnc密码2.4、配置防火…

网络编程套接字和传输层tcp,udp协议

认识端口号 我们知道在网络数据传输的时候&#xff0c;在IP数据包头部有两个IP地址&#xff0c;分别叫做源IP地址和目的IP地址。IP地址是帮助我们在网络中确定最终发送的主机&#xff0c;但是实际上数据应该发送到主机上指定的进程上的&#xff0c;所以我们不仅要确定主机&…

虚拟化技术 分离虚拟机数据流量与ESXi的流量管理

一、实验内容 为ESXi主机添加网卡通过vClient查看已添加的网卡信息为ESXi添加网络&#xff0c;创建标准交换机修改网络配置&#xff0c;实现虚拟机数据流量与ESXi的管理流量分离 二、实验主要仪器设备及材料 安装有64位Windows操作系统的台式电脑或笔记本电脑&#xff0c;建…

泰达克仿钻点水晶饰品包装印刷防滑UV胶特性及应用场景

仿钻点UV滴胶是一种特殊的胶水 常用于模拟钻石的效果 它是一种透明的胶水 具有高光泽度和折射率 可以在物体表面形成类似钻石的亮闪效果 仿钻点UV滴胶通常由紫外线固化胶组成 需要通过紫外线照射来固化和硬化 它具有以下特点&#xff1a; 1. 透明度&#xff1a;仿钻点UV滴胶具有…

使用 OpenCV 创建视频(74)

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇:OpenCV 库来捕获和处理视频输入和相似度测量(73) 下一篇&#xff1a;OpenCV使用 Kinect 和其他兼容 OpenNI 的深度传感器(75) 目标 每当您使用视频源时&#xff0c;您最终可能希望将图像处理结果保…

Zabbix6.0容器化部署(Docker-Composed)

Zabbix 为每个 Zabbix 组件提供 Docker image 作为可移植和自给自足的容器&#xff0c;以加快部署和更新过程。 Zabbix 组件在 Ubuntu、Alpine Linux 和 CentOS 基础 image 上提供:Zabbix 组件支持 MySQL 和 PostgreSQL 数据库、Apache2 和 Nginx Web 服务器。 1. Zabbix 组件…

ASP.NET网上车辆档案管理系统

摘 要 本文采用基于Web的Asp.net技术&#xff0c;并与sql server 2000数据库相结合&#xff0c;研发了一套车辆档案管理系统。该系统扩展性好&#xff0c;易于维护。简化了车辆档案设计流程&#xff0c;去除了冗余信息。汽车销售企业可以通过本系统完成整个销售及售后所有档案…

C语言指针的初级练习

前言 从0开始记录我的学习历程&#xff0c;我会尽我所能&#xff0c;写出最最大白话的文章&#xff0c;希望能够帮到你&#xff0c;谢谢。 提示&#xff1a;文章作者为初学者&#xff0c;有问题请评论指正&#xff0c;感谢。 哥们嗷 不知道你和我是否一样在学习C语言指针的时…

【ZZULI数据结构实验】压缩与解码的钥匙:赫夫曼编码应用

&#x1f4c3;博客主页&#xff1a; 小镇敲码人 &#x1f49a;代码仓库&#xff0c;欢迎访问 &#x1f680; 欢迎关注&#xff1a;&#x1f44d;点赞 &#x1f442;&#x1f3fd;留言 &#x1f60d;收藏 &#x1f30f; 任尔江湖满血骨&#xff0c;我自踏雪寻梅香。 万千浮云遮碧…

使用 Docker 部署 TaleBook 私人书籍管理系统

1&#xff09;项目介绍 GitHub&#xff1a;https://github.com/talebook/talebook Talebook 是一个简洁但强大的私人书籍管理系统。它基于 Calibre 项目构建&#xff0c;具备书籍管理、在线阅读与推送、用户管理、SSO 登录、从百度/豆瓣拉取书籍信息等功能。 友情提醒&#x…

工业交换机外壳材质大比拼,看看哪种外壳适合你

在工业领域里&#xff0c;交换机就像我们的网络心脏&#xff0c;时刻跳动着确保信息畅通无阻。而它的外壳&#xff0c;就是保护这颗“心脏”的铠甲。今天&#xff0c;咱们就来聊聊这些铠甲——工业交换机外壳的材质和防护等级&#xff0c;看看它们如何守护我们的网络世界。 首…

网络编程基础回顾

计算机网络&#xff08;5&#xff09;&#xff1a;运输层 OSI 模型与 TCP/IP 协议 OSI七层协议模型 (open system interconnection) 应用层&#xff1a;为应用数据提供服务表示层&#xff1a;数据格式转化&#xff0c;数据加密会话层&#xff1a;建立、维护和管理会话传输层&…

算法设计与分析 动态规划/回溯

1.最大子段和 int a[N]; int maxn(int n) {int tempa[0];int ans0;ansmax(temp,ans);for(int i1;i<n;i){if(temp>0){tempa[i];}else tempa[i];ansmax(temp,ans);}return ans; } int main() {int n,ans0;cin>>n;for(int i0;i<n;i) cin>>a[i];ansmaxn(n);co…

【吃透Java手写】4-Tomcat-简易版

【吃透Java手写】Tomcat-简易版-源码解析 1 准备工作1.1 引入依赖1.2 创建一个Tomcat的启动类 2 线程池技术回顾2.1 线程池的使用流程2.2 线程池的参数2.2.1 任务队列&#xff08;workQueue&#xff09;2.2.2 线程工厂&#xff08;threadFactory&#xff09;2.2.3 拒绝策略&…

财务管理|基于SprinBoot+vue的财务管理系统(源码+数据库+文档)

财务管理系统 目录 基于SprinBootvue的财务管理系统 一、前言 二、系统设计 三、系统功能设计 系统功能实现 1管理员功能模块 2员工功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1…

视频批量剪辑指南:一键合并视频并添加背景音乐,高效便捷

在数字化时代&#xff0c;视频剪辑已经成为了一项常见且重要的技能。无论是制作家庭影片、工作展示还是社交媒体内容&#xff0c;掌握高效的视频剪辑技巧都能极大地提升我们的工作效率和创作质量。本文将为您介绍云炫AI智剪中高效的视频批量剪辑方法&#xff0c;让您能够一键合…

在线教程|图灵奖得主Yann LeCun盛赞!小红书开源InstantID,一张原图即可定制多种风格写真

不久前&#xff0c;一群来自小红书的 95 后工程师联合北大团队发布了开源项目「InstantID」&#xff0c;只需上传一张照片&#xff0c;这款 AI 写真神器就能轻松定制多种风格的 AI 写真&#xff0c;告别繁琐修图。 InstantID 一经发布就引起了广泛关注&#xff0c;GitHub 收藏量…

Java实现的网上书店系统(附带完整源码)

作者声明:文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者 实现技术:JSP技术;javaBean;servlet;MySql数据库。 系统功能结构图 该系统为MVC结构,它的运行环境分客户端、应用服务器端和数据库服务器端三部分 书店系统需求分析: 通过…