
语言基础
BP白朴
要扫扫思想上的“灰尘”,思想是行动的先导,思想上松劲,行动上就会落后,通过给思想“扫尘”,看看理想信念是否滑坡、斗争精神是否不足、道德修养是否不高,以榜样精神补足思想之“钙”,真正修好“内功”。
展开
-
数据结构复习(8)---冒泡排序
上一章 数据结构复习(7)—双向循环链表package cjy.datastructure;import java.util.Arrays;/** * 冒泡排序 * Title: BubbleSort.java * @author CJY》10258 * @date 2019年7月13日 */public class BubbleSort {/** * 冒泡排序的优点:每...原创 2019-07-13 17:08:41 · 344 阅读 · 0 评论 -
数据结构复习(7)---双向循环链表
上一章:数据结构复习(6)—循环链表package cjy.datastructure;/** * 双向循环链表 * Title: DoubleNode.java * @author CJY》10258 * @date 2019年7月12日 */public class DoubleNode { //数据域 int data; //双向循环 ,前驱 ,后继 = this 循环...原创 2019-07-12 21:27:39 · 359 阅读 · 0 评论 -
数据结构复习(6)---循环链表
上一章:数据结构复习(5)—单链表循环链表: 其实就是将 单链表 终端节点的(next)指针域,由单链表的 null 变为指向头节点,从而形成一个环。就变成了循环链表与单链表 有 区别的代码:单链表: Node next = null ; 下一个指针域为空循环链表: LoopNode next = this; 指向自身头尾相连使得循环链表没有明显的尾端,可能会使一些方法进入死循...原创 2019-07-12 19:20:11 · 466 阅读 · 0 评论 -
数据结构复习(5)---单链表
上一章:数据结构复习(4)—队列package cjy.datastructure;/** * 节点 Title: Node.java 单链表 * * @author CJY》10258 * @date 2019年7月12日 */public class Node { /** * 节点对应的值(数值域) */ int data; /** * 下一个节点的位置(...原创 2019-07-12 17:35:40 · 334 阅读 · 0 评论 -
数据结构复习(4)---队列
上一章:数据结构复习(3)—栈package cjy.datastructure;import java.util.Arrays;public class Queue { private int[] elements; public Queue() { elements = new int[0]; } /** * 入队 * * @param element...原创 2019-07-12 15:28:10 · 282 阅读 · 0 评论 -
数据结构复习(3)---栈
上一章 : 数据结构复习(2)—线性查找,二分查找package cjy.datastructure;/** * 顺序栈 Title: Stack.java 数据类型不确定可改为类模版<T> * * @author CJY》10258 * @date 2019年7月9日 */public class Stack { /** * 空数组 */ privat...原创 2019-07-09 22:45:47 · 291 阅读 · 0 评论 -
数据结构复习(2)---线性查找,二分查找
所用数组参考上一章: 数据结构复习(1) MyArrayList—线性表/** * 线性查找 有则返回下标,否则返回-1 * * @param element * @return */ public int search(int element) { for (int i = 0; i < elements.length; i++) { if (eleme...原创 2019-07-09 22:20:29 · 337 阅读 · 0 评论 -
数据结构复习(1)---数组线性表 MyArrayList
根据ArrayList<>提供的方法名,去实现一遍其内部逻辑目前已实现方法如下:package cjy.datastructure;import java.util.Arrays;/** * 线性表常用操作 Title: MyArrayList.java * * 后面需改泛型以支持其他数据类型 都用Object * * @author CJY》10258 *...原创 2019-07-09 20:47:43 · 466 阅读 · 0 评论 -
反转元音字母
编写一个函数,以字符串作为输入,反转该字符串中的元音字母。示例 1:输入: "hello"输出: "holle"示例 2:输入: "leetcode"输出: "leotcede"说明:元音字母不包含字母"y"。package newhomework;public class ssss { public static void main(String[] args...原创 2019-10-19 17:20:29 · 702 阅读 · 0 评论 -
韩信点兵-相传韩信才智过人,从不直接清点自己部下的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入3个非负整数a,b,c
相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100 。输入输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b&...原创 2020-06-01 16:29:58 · 6023 阅读 · 0 评论 -
子序列求和
输入两个正整数 n&lt;m&lt;10^6 ,输出,保留五位小数。输入包含多组数据,结束标记为n=m=0。提示。。。。本题有陷阱。样例输入:2 465536 6553600 0样例输出:Case 1: 0.42361Case 2: 0.00001import java.util.Scanner;public class Main { public static ...原创 2018-12-01 17:59:32 · 517 阅读 · 0 评论 -
分数化小数。。。BigDecimal
输入正整数a , b , c输出 a / b 的小数形式, 取C位小数精确到小数点后C位 ,a,b<=1000000, c<=100结束标记为 a = b = c = 0样例1 6 40 0 0输出0.1667import java.math.BigDecimal;import java.util.Scanner;/** * 除数 n/m 取C位小数...原创 2018-12-03 20:53:07 · 850 阅读 · 0 评论 -
用1,2,3......9共9个数组成3个三位数,ABC,DEF , GHI ,每个数字恰好使用一遍,要求 A:B:C=1:2:3
排列permutation用1,2,3…9共9个数组成3个三位数,ABC,DEF , GHI ,每个数字恰好使用一遍,要求 A:B:C=1:2:3按照abc def ghi 的格式输出所有解。public class Main { public static void main(String[] args) { answer(); } public static void ...原创 2018-12-03 22:32:40 · 2430 阅读 · 0 评论 -
高斯的日记-- 大数学家高斯有个好习惯:无论如何都要记日记。。。。。。。。。。
[问题描述]大数学家高斯有个好习惯:无论如何都要记日记。他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?高斯出生于:1777年4月30日。在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是...原创 2018-12-27 20:46:07 · 2523 阅读 · 0 评论 -
开灯问题~有n盏灯,编号为1~n。1号将灯全部打开,2将按下所有为2的倍数的开关,(这些灯将被关掉)第3个人按下所有编号为3的倍数的开关(该灯如为打开的, 则将它关闭;如关闭的,则将它打开)。
有n盏灯,编号为1~n。1号将灯全部打开,2将按下所有为2的倍数的开关,(这些灯将被关掉)第3个人按下所有编号为3的倍数的开关(该灯如为打开的, 则将它关闭;如关闭的,则将它打开)。以此类推,一共有k个人,最后有哪些灯开着?k<=n<=1000import java.util.Scanner;public class ssss { public static void ...原创 2018-12-18 16:05:39 · 12618 阅读 · 0 评论 -
数数字-UVA 1225 Digit Counting 【ACM/ICPC Danang 2007】
把前n(n<=10000)个整数顺次写在一起,123456789101112……,数一数0~9各出现多少次(输出10个整数,分别是0,1,2,……,9出现的次数)。例如输入15,则数组为"123456789101112131415"输入:3输出:0 1 1 1 0 0 0 0 0 0import java.util.Scanner;public class Ma { ...原创 2019-01-17 15:31:32 · 339 阅读 · 0 评论 -
分子量(Molar Mass, ACM/ICPC Seoul 2007, UVa1586)java
题目描述:给出一种物质的分子式(不带括号),求分子量。本题中的分子式只包含4种原子,分别为C, H, O, N,原子量分别为12.01, 1.008, 16.00, 14.01(单位:g/mol)例如C6H5OH的分子量为94.108g/mol思路:先分解分子的每个元素,如:C6H5OH 分解为 C6 , H5 , O , H再通过 switch 获得相应元素的原子量 × 强制转换...原创 2019-01-17 17:19:28 · 641 阅读 · 0 评论 -
蛇形填数---在 N x N 方阵中填入1,2,...,n*n,要求填成蛇形。
10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4原创 2019-01-09 22:32:22 · 8072 阅读 · 0 评论 -
周期串(UVa455 ,Periodic Strings)-如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串一k为周期。
如果一个字符串可以有某个长度为K的字符串重复多次得到,我们说该串一k为周期,例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。输入:asdasdasdasd输出:3import java.util.Scanner;public class Main { public static void main(String[] args) { bool...原创 2019-01-21 17:06:59 · 2644 阅读 · 0 评论 -
谜题(Uva227 Puzzle,ACM/ICPC World Finals 1993)
有一个5 * 5的网络,其中恰好有一个格子是空的,其他格子各有一个字母。一共有4种指令:A, B, L, R, 分别表示把空格上、下、左、右的相邻字母移到空格中。输入初始网格和指令序列(以数字0结束),输出指令执行完毕后的网络。如果有非法指令,应输出" This puzzle has no final configuration."。如:T R G S JX D O K IM ...原创 2019-01-21 22:36:38 · 499 阅读 · 0 评论 -
竖式问题-输入一个数集。找出所有形如abc*de(三位数乘以两位数)的算式。
输入一个数集。找出所有形如abc*de(三位数乘以两位数)的算式。使得在完整的竖式中,所有数字都属于一个特定的数字集合(全由数集中的数字组成)输出数字集合(相邻数字之间无空格)。输入:2357输出:&lt;1&gt; 775 X 33 ------ 2325 2325 ------ 25575import java.util.Scanner;pub...原创 2019-01-16 16:09:56 · 2181 阅读 · 0 评论 -
得分(Score,ACM/ICPC Seoul2005)给出一个由O和X组成得串(长度为1~80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。
给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。java输入 :OOOOXOOOOXOOOOX输出:30import java.util.Scanner;public class Ma { public static void main(String[] args) { int sum = 0; Scan...原创 2019-01-16 17:01:25 · 3352 阅读 · 1 评论 -
UVa232 纵横字谜的答案java
输入一个r行c列的网格,黑格用‘ * ’表示,每个白格都填有一个字母。如果一个白格的左边相邻位置或者上边相邻位置没有白格(可能是黑格,也可能出了网格边界),则称这个白格是一个起始格。首先把所有的起始格从上到下,从左到右的顺序编号为1,2,3…,样例输入:2 2AT*O6 7AIM*DEN*ME*ONEUPON*TOSO*ERIN*SA*OR*IES*DEA0样例输出...翻译 2019-01-22 18:15:41 · 389 阅读 · 0 评论 -
大整数阶乘-输入一个正整数n,输出n!的值
问题描述输入一个正整数n,输出n!的值。n!=123*…*n。输入格式输入一个正整数n,n<=1000。输出格式输出n!的值。样例输入10样例输出3628800 public static void main(String[] args) { BigInteger mul = new BigInteger("1"); Scanner scanner =...原创 2019-03-13 20:28:55 · 2417 阅读 · 0 评论 -
递归-振兴中华-数字倒转-汉诺塔-数字倒转-最大公约数-最小公倍数-累加-阶乘-斐波那契数列-二分查找-杨辉三角
package lanqiaobei;public class Main10 { public static void main(String[] args) { // 數字倒轉(12345); // System.out.println(振興中華(4, 3)); // System.out.println(最大公約數(20, 5)); System.out.println(...原创 2019-03-23 22:57:15 · 393 阅读 · 0 评论 -
假设你现在正在爬楼梯,楼梯有 nn 级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部?
假设你现在正在爬楼梯,楼梯有 nn 级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部?输入格式第一行输入一个整数n(1≤n≤50),代表楼梯的级数。输出格式输出爬到楼梯顶部的方法总数。样例输入 复制5样例输出 复制8Fibonacciimport java.util.Scanner;public class Main { public static ...翻译 2018-11-26 22:37:43 · 2965 阅读 · 0 评论 -
倒三角形-输入正整数n输出一个n层的倒三角形
输入正整数n<=20,输出一个n层的倒三角形 如 n = 5 时,输出如下。import java.util.ArrayList;import java.util.Scanner;/** * 倒三角形 * 输入正整数n<=20,输出一个n层的倒三角形 * @author * */public class Main { public static void m...原创 2018-12-01 17:22:10 · 4982 阅读 · 0 评论 -
1,判断一个数是不是质数。 2,选取出100以上、1000以内所有个位数字与十位数字之和被10除所得余数恰好是百位数字的素数(如293).输出上述这些素数的个数及这些素数的和.
对于大于 1 的数,如果除了 1 和它本身,它不能再被其它正整数整除,那么我们说它是一个质数。晓萌想判断一个数是不是质数,希望找你写个程序,帮助她进行判断。输入格式输入包括一行,为一个整数 N(1<N≤1000),正是晓萌给出你让你判断的数字。输出格式输出包括一行,如果晓萌给出的整数 N 为质数,那么输出YES;如果 N 不是质数,那么输出NO。 public static...原创 2018-11-28 13:59:03 · 4367 阅读 · 0 评论 -
OJ 题目要求直到 碰到文件结束符(EOF)才结束输入 的用法。JAVA && C
在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数...原创 2018-11-28 13:48:19 · 8094 阅读 · 0 评论 -
有一个奇怪的国家,里面的国民对于事情的态度永远只有两面。当两个人遇到一起讨论一个事情的时候——两个持赞同观点的人遇到一起后会对这个事情都继续赞同;一个持赞同观点的人遇到一个持不赞同观点的人的时候
有一个奇怪的国家,里面的国民对于事情的态度永远只有两面。当两个人遇到一起讨论一个事情的时候——两个持赞同观点的人遇到一起后会对这个事情都继续赞同;一个持赞同观点的人遇到一个持不赞同观点的人的时候,两人都会不再继续赞同;两个持不赞同观点的人遇到一起讨论后反而会对这个事情开始赞同。输入格式输入包括两行,每行包括 N(1≤N≤50) 个数字,分别表示两个人对于 N 个事情对应的看法——0 表示不赞同...原创 2018-11-26 23:23:07 · 619 阅读 · 0 评论 -
小米是一个幼儿园老师,每学期的泥塑课上,她都会给每个学生发不超过 250250 立方厘米的等量橡皮泥,教大家做泥塑。在上课过程中,她发现每个班都恰好有一个小朋友会去抢另一个小朋友的橡皮泥
小米是一个幼儿园老师,每学期的泥塑课上,她都会给每个学生发不超过 250 立方厘米的等量橡皮泥,教大家做泥塑。在上课过程中,她发现每个班都恰好有一个小朋友会去抢另一个小朋友的橡皮泥,于是她决定,在正式开始做泥塑前,让大家把手里的橡皮泥都捏成一个立方体,并且测量手里捏好的橡皮泥的长、宽和高。这样,她就可以知道谁被谁抢了橡皮泥了。输入格式小米老师在不同的学期可能会带一个班或者同时带多个班,因此输入...原创 2018-11-26 23:21:59 · 1151 阅读 · 0 评论 -
晓萌最近在做一个翻转图片的应用,你可能也知道,图片其实是由一个个的点组成的。于是,晓萌想先做一个可以翻转矩阵的程序,来解决他问题的核心部分。
晓萌最近在做一个翻转图片的应用,你可能也知道,图片其实是由一个个的点组成的。于是,晓萌想先做一个可以翻转矩阵的程序,来解决他问题的核心部分。输入格式输入第一行包括由空格分开的整数 M,N,T(0<N,M<200),T 的值为 0 或 1。其中M 和 N 分别表示待处理矩阵的行数与列数,T 为 0 时表示左右翻转,为 1 时表示上下翻转。之后的 M 行,每行包括由空格分隔的 N 个...原创 2018-11-26 23:20:37 · 431 阅读 · 0 评论 -
斐波那契数列是一种非常有意思的数列,由 00 和 11 开始,之后的斐波那契系数就由之前的两数相加。
斐波那契数列是一种非常有意思的数列,由 00和 11 开始,之后的斐波那契系数就由之前的两数相加。用数学公式定义斐波那契数列则可以看成如下形式:F_0=0F0=0F_1=1F1=1F_n=F_{n-1}+F_{n-2}Fn=Fn−1+Fn−2我们约定 F_nFn 表示斐波那契数列的第 nn 项,你能知道斐波那契数列中的任何一项吗?输入格式输入包括一行,包括一个整...原创 2018-11-26 23:18:42 · 1116 阅读 · 0 评论 -
对于大于 11 的数,如果除了 11 和它本身,它不能再被其它正整数整除,那么我们说它是一个质数。
对于大于 1 的数,如果除了 1 和它本身,它不能再被其它正整数整除,那么我们说它是一个质数。晓萌想判断一个数是不是质数,希望找你写个程序,帮助她进行判断。输入格式输入包括一行,为一个整数 N(1<N≤1000),正是晓萌给出你让你判断的数字。输出格式输出包括一行,如果晓萌给出的整数 N 为质数,那么输出YES;如果 N 不是质数,那么输出NO。样例输入 复制3样例输出 复制...原创 2018-11-26 23:16:00 · 1210 阅读 · 0 评论 -
判断一个数是否能被另一个整数整除是一个挺简单的问题,一般一个模运算就可以搞定了,懒惰的晓萌还是不想自己做,于是找到你帮他写代码,你就帮帮他吧。
判断一个数是否能被另一个整数整除是一个挺简单的问题,一般一个模运算就可以搞定了,懒惰的晓萌还是不想自己做,于是找到你帮他写代码,你就帮帮他吧。输入格式输入包括两个由空格分开的整数 M 和N(1≤M,N≤500)。输出格式输出包括一行,如果 M 可以被 N 整除就输出YES,否则输出NO(结果大小写敏感)。样例输入21 7样例输出YESimport java.util.Scan...原创 2018-11-26 23:14:28 · 2151 阅读 · 0 评论 -
给定一个罗马数字 ss,将罗马数字转换成整数。
给定一个罗马数字 s,将罗马数字转换成整数。如罗马数字I,II,III,IV,V分别代表数字 1, 2, 3, 4, 5。首先要来了解一下罗马数字表示法,基本字符有 7 个:I、V、X、L、C、D、M,分别表示1、5、10、50、100、500、1000。在构成数字的时候,有下列规则:1、相同的数字连写,所表示的数等于这些数字相加得到的数,如:III = 3=3;2、小的数字在大的数字的...原创 2018-11-26 22:34:04 · 857 阅读 · 0 评论 -
给定一个整数 numnum,将整数转换成罗马数字。
给定一个整数 numnum,将整数转换成罗马数字。如1,2,3,4,5 对应的罗马数字分别为I,II,III,IV,V等,更详细的说明见此 链接。输入格式第一行输入一个整数num(1≤num≤3999)。输出格式输出 num 对应的罗马数字。样例输入123样例输出CXXIIIimport java.util.Scanner;public class Main { publ...原创 2018-11-26 22:31:22 · 599 阅读 · 0 评论 -
贪心算法——有1元,5元,10元,50元,100元,500元的硬币各C1,C5,C10,C50,C100,C500枚。现在要用这些硬币来支付A元,最少需要多少枚硬币?
有1元,5元,10元,50元,100元,500元的硬币各C1,C5,C10,C50,C100,C500枚。现在要用这些硬币来支付A元,最少需要多少枚硬币?先从面值最大的硬币往小遍历,用大面值的硬币越多,总数就越少贪心算法思路:for (int i = b.length - 1; i >= 0; i–)尽可能多地使用面值为500元的硬币再尽可能多地使用面值为100元的硬...原创 2018-11-29 13:40:57 · 4519 阅读 · 0 评论 -
“A+B+C”的计算结果。
这是一个非常简单的题目,意在考察你编程的基础能力。千万别想难了哦。输入为一行,包括了用空格分隔的三个整数 A、B、C(数据范围均在−40 ~ 40 之间)。输出为一行,为“A+B+C”的计算结果。样例输入22 1 3样例输出26import java.util.Scanner;public class Main { public static void main(String...原创 2018-11-25 22:59:18 · 1258 阅读 · 0 评论 -
数组内存放了一些个位数字,组成一个大数(从高位到低位),现在将这个数加 11,并输出加一以后的结果。
数组内存放了一些个位数字,组成一个大数(从高位到低位),现在将这个数加 1,并输出加一以后的结果。例如:A = [2,3,1,1,4]则结果为 [2,3,1,1,5]。A = [7,8,9]则结果为 [7,9,0]。输入格式第一行输入一个正整数n(1≤n≤100),接下来的一行,输入用空格分隔的 n个 0 到 9 的非负整数组成的数组 A[n]。输出格式输出一行,n 个用空格分隔...原创 2018-11-25 22:56:44 · 751 阅读 · 0 评论