
洛谷Java解法
本人发现洛谷上Java解法挺少的,所以准别开设一个专刊,发布自己做过的题目的Java解法。
吹牛大王历险记
时间改变的是那些本就不坚定的东西
展开
-
洛谷P1433 吃奶酪--Java解法(货郎担问题)
洛谷P1433 吃奶酪–Java解法(货郎担问题)题目链接解决思想本题目是一个典型的货郎担问题,即从(0,0)点出发,所有点仅经过依次(我们可以用反证法证明如果有一个点经过两次其路径一定比每个点经过依次长),求我们走过路程的最小值。 对于此题目,因为时间要求比较高,这迫使我们必须使用动态规划而不能用递归搜索去解决此问题。所以我们应该使用状态压缩的动态规划解决此题目,下面仅给出代码实现。代码实现import java.io.*;import java.util.Arrays;public cla原创 2021-02-16 23:00:26 · 435 阅读 · 0 评论 -
洛谷P2392 kkksc03考前临时抱佛脚--Java解法
洛谷P2392 kkksc03考前临时抱佛脚–Java解法题目链接题目描述略解题思路语言描述个人认为本题目题意比较清晰,我们只需分别求得做每一科目的所需的最短时间,然后4科最短时间加起来即为我们需要的答案。对于求每一科目的最短时间,我们可以将问题转化成0-1背包问题,这科所有题目时间和的一半即为背包的容量,而每个题解需要的时间即为物品,然后我们遍历所有物品之后能让背包中装的物品的东西体积(时间)尽可能的多即可,然后总时间减去最大时间即为我们这科做完的最短时间。代码描述import java原创 2021-02-03 22:48:51 · 553 阅读 · 0 评论 -
P1217 [USACO1.5]回文质数 Prime Palindromes--java中规中矩解法
P1217 [USACO1.5]回文质数 Prime Palindromes题目链接题目题目描述因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。写一个程序来找出范围 [a,b] (5≤a<b≤100,000,000)( 一亿)间的所有回文质数。输入格式第 1 行: 两个整数 a 和 b .输出格式输出一个回文质数的列表,一行一个。输入输出样例输入5 500输出571110113115118119原创 2021-02-03 12:16:28 · 436 阅读 · 0 评论 -
洛谷P1088 [NOIP2004 普及组] 火星人-Java朴素解法
import java.io.;import java.util.;public class Main {public static void main(String[] args) throws IOException {BufferedReader br=new BufferedReader(new InputStreamReader(System.in));StreamTokenizer st=new StreamTokenizer(br);PrintWriter pr=new Print原创 2021-02-01 14:59:50 · 700 阅读 · 0 评论 -
洛谷 P1706 全排列问题Java
洛谷 P1706 全排列问题题目链接题目描述输出自然数 1 到 nn 所有不重复的排列,即 n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。输入格式一个整数 n。输出格式由1∼n 组成的所有不重复的数字序列,每行一个序列。每个数字保留 5 个场宽。输入输出样例输入3输出 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2原创 2021-02-01 12:53:32 · 387 阅读 · 0 评论 -
洛谷 帮贡排序
洛谷 帮贡排序题目链接解题思路题目描述内容过多,注意读懂,然后做几个排序即可。代码描述import java.util.*;public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); String s1="BangZhu"; String s2="FuBangZhu"; String s3="HuFa";原创 2021-01-31 09:46:13 · 213 阅读 · 0 评论 -
洛谷 统计方形
洛谷 统计方形题目链接题目背景1997年普及组第一题题目描述有一个n×m方格的棋盘,求其方格包含多少正方形、长方形(不包含正方形)。输入格式一行,两个正整数 n,mn,m(n \leq 5000,m \leq 5000n≤5000,m≤5000)。输出格式一行,两个正整数,分别表示方格包含多少正方形、长方形(不包含正方形)。输入输出样例输入2 3输出8 10解题思路思路描述简单进行暴力求解,求解每个网格为右下角的长方形和正方形的个数,累计求和即可。代码描述原创 2021-01-31 09:42:46 · 910 阅读 · 0 评论 -
洛谷P1093、[NOIP2007 普及组] 奖学金
洛谷P1093、[NOIP2007 普及组] 奖学金题目链接思路一个简单的结构体排序,掌握java语言的排序方法即可代码import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in))原创 2021-01-29 13:58:41 · 578 阅读 · 0 评论 -
Java快读快写模板
Java快读快写模板众所周知Java在进行百万级的读写时使用Scanner类和System.out.print()是非常慢的,因此掌握快读快写则十分必要。快读快写代码import java.io.*;public class quicklyReadWrite{ public static void main(String[] args) throws IOException { /* *quick read * 对于文本输入,则使用new FileInputStream("原创 2021-01-28 21:40:19 · 1003 阅读 · 0 评论 -
洛谷P1065作业调度方案--Java解法
洛谷P1065作业调度方案–Java解法题目链接废话此题目文字叙述比较多,首先要完全理解题目意思,开始没太理解题目意思浪费了很多时间,其实本题目就是一个简单模拟题目。另外,在对时间线以及各种数据的表示上面也需要花费一些时间考虑,本题目涉及变量众多,建议在命名的时候可以保证见名知意。思路首先,我们要存储工件的安排顺序,并能够知道当前要安排的工件是安排工序几以及该工序应该在哪一个机器上面。另外,我们应该知道当前安排的工件的工序最早可以在什么时间开始。此外,如何表示一个机器的时间线。因为没有想到更好的办原创 2021-01-27 14:25:38 · 565 阅读 · 0 评论 -
洛谷P1045 [NOIP2003 普及组] 麦森数--Java使用快速幂
洛谷P1045 [NOIP2003 普及组] 麦森数–Java使用快速幂题目链接基本思路通过使用快速幂取模节省运算时间,然后使用大数类保证高精度代码import java.math.BigInteger;import java.util.*;public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); Syste原创 2021-01-26 16:24:41 · 395 阅读 · 0 评论 -
洛谷P1249 最大乘积 java两种解法
洛谷P1249 最大乘积 java两种解法方法一、动态规划看到题目,我们可以将题目抽象成01背包问题,背包容量为n,价值是装的物品体积的乘积。但因为大数模拟,而java大数类比较慢,所以此方法会造成超时,但也是一种可行思路。代码描述:import java.math.BigInteger;import java.util.*;public class Main { public static void main(String[] args) { //题目可以转换成01背包问题 Scan原创 2021-01-26 12:45:50 · 755 阅读 · 2 评论