news 2026/5/8 9:29:25

程序设计竞赛java

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
程序设计竞赛java

一、固定代码结构

Java 没有裸写 main 的说法,必须套类,且类名必须是英文大写开头(Eclipse 要求),直接写一个公共类即可,所有逻辑都在 main 方法里,和 C++ 的 main 逻辑完全一致:

// 类名必须和文件名一致,比如文件叫Main.java,类名就必须是Main(蓝桥杯统一用Main就行) public class Main { // 全局变量(比如数组、常量)必须加static,否则main里不能直接用 public static final int N = 100010; public static int[] arr = new int[N]; // 主方法固定格式,背下来! public static void main(String[] args) { // 你的解题逻辑(和C++的main里完全一样,只是语法换Java) // 比如暴力枚举、递推、BFS/DFS等 } // 自定义函数(比如DFS、素数判断)也必须加static,否则main里不能直接调用 public static boolean isPrime(int x) { if (x < 2) return false; for (int i = 2; i <= Math.sqrt(x); i++) { if (x % i == 0) return false; } return true; } }

二、输入输出

对于大数据输入题(比如 1e5 行数据),用Scanner会直接超时,这是 Java 组的高频坑,你需要掌握两种输入方式(小数据用 Scanner,大数据用 BufferedReader),输出用System.out即可。

  • 小数据 Scanner(简单,适合暴力 / 递推题):
import java.util.Scanner; // 必须导包,和C++的#include一样 public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); // 读整数,对应C++的scanf("%d", &a) long b = sc.nextLong(); // 读长整数,对应C++的long long String s = sc.next(); // 读字符串(无空格) sc.close(); // 可选,省赛不用关也没事 } }
  • 大数据 BufferedReader:
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { // 必须抛IOException,否则编译报错 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int a = Integer.parseInt(br.readLine()); // 读一行转整数 long b = Long.parseLong(br.readLine()); // 读一行转长整数 String s = br.readLine(); // 读一行字符串 // 读多个数:先读行,再分割 String[] parts = br.readLine().split(" "); int c = Integer.parseInt(parts[0]); int d = Integer.parseInt(parts[1]); } }

三、Java 基础数据类型 + 大数类

遇到高精度加减乘除、大素数判断、大阶乘等题,直接调 API 就行,不用写任何逻辑,这是 Java 组比 C++ 组轻松的点。

  • 基础类型:记住Java 没有 long long,8 字节整数用long(声明时加 L,比如10000000000L),避免int溢出(C++ 里的 int 溢出坑 Java 也有,只是类型名不同)。
  • 大数类 BigInteger(省赛核心,只需掌握加减乘除、取模):
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 = sc.nextBigInteger(); BigInteger b = sc.nextBigInteger(); BigInteger add = a.add(b); // 加,不能用+ BigInteger sub = a.subtract(b); // 减,不能用- BigInteger mul = a.multiply(b); // 乘,不能用* BigInteger div = a.divide(b); // 除,不能用/ BigInteger mod = a.mod(b); // 取模 System.out.println(add); } }

四、集合框架

import java.util.ArrayList; public class Main { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); list.add(1); // 对应vector的push_back list.add(2); int x = list.get(0); // 对应vector的[0] int len = list.size(); // 对应vector的size() for (int i = 0; i < len; i++) { // 遍历,和C++一样 System.out.println(list.get(i)); } } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 19:38:28

黑苹果配置新手指南:如何使用OpCore Simplify实现零基础配置

黑苹果配置新手指南&#xff1a;如何使用OpCore Simplify实现零基础配置 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 对于想要体验macOS系统的电脑…

作者头像 李华
网站建设 2026/4/23 13:37:59

如何安全高效地修改Unreal引擎游戏存档?uesave工具全解析

如何安全高效地修改Unreal引擎游戏存档&#xff1f;uesave工具全解析 【免费下载链接】uesave-rs 项目地址: https://gitcode.com/gh_mirrors/ue/uesave-rs 在游戏过程中&#xff0c;你是否遇到过这些困扰&#xff1a;精心培养的角色意外死亡导致进度丢失、想要体验高难…

作者头像 李华
网站建设 2026/4/28 1:01:30

MedGemma X-Ray效果展示:动态生成带医学术语解释的交互式报告

MedGemma X-Ray效果展示&#xff1a;动态生成带医学术语解释的交互式报告 1. 这不是普通阅片工具&#xff0c;而是一份会“说话”的影像报告 你有没有试过盯着一张胸部X光片发呆&#xff1f;肋骨走向对不对、肺野透亮度是否均匀、心影轮廓有没有异常……这些专业判断&#xf…

作者头像 李华
网站建设 2026/4/23 23:44:20

SiameseUIE实际应用:客服工单中客户姓名+所在地快速定位

SiameseUIE实际应用&#xff1a;客服工单中客户姓名所在地快速定位 1. 为什么客服团队需要这个能力&#xff1f; 你有没有遇到过这样的场景&#xff1a; 凌晨三点&#xff0c;一条紧急工单弹出来——“用户张伟在杭州西湖区下单失败&#xff0c;支付页面卡死”。 客服小哥立刻…

作者头像 李华
网站建设 2026/5/4 17:58:34

AI 净界-RMBG-1.4 企业案例:电商平台主图自动化生产流程

AI 净界-RMBG-1.4 企业案例&#xff1a;电商平台主图自动化生产流程 1. 为什么电商主图成了运营团队的“时间黑洞” 你有没有见过这样的场景&#xff1f; 凌晨两点&#xff0c;设计组还在批量处理300张新款商品图——每张都要手动抠出产品主体、换纯白背景、调亮度、加阴影、…

作者头像 李华
网站建设 2026/5/4 15:23:17

STM32开发中JLink仿真器连接操作指南

以下是对您提供的博文内容进行 深度润色与专业重构后的版本 。我以一名资深嵌入式系统工程师兼技术博主的身份&#xff0c;彻底重写了全文&#xff1a; - 去除所有AI腔调与模板化结构 &#xff08;如“引言/总结/展望”等机械分节&#xff09;&#xff1b; - 打破教科书…

作者头像 李华