算法 @java
DRMIVET Stone
If you do not wish anyone to know what you have done, it is better not to have done it in the first place
展开
-
最小树结构-普利姆
import java.util.Scanner;//普利姆public class Main { static final int MAXVEX =65535; static final int MINVEX =65535; public static void main(String[] args) { MyGrop p = new MyGrop(); MinSpanTree原创 2015-04-07 16:46:52 · 520 阅读 · 0 评论 -
最小树-克鲁斯卡尔
public class Main { static final int MAXVEX =65535; static final int MINVEX =65535; public static void main(String[] args) { MyGrop2 p = new MyGrop2(); new Main().MiniSpanTree(p); } static in原创 2015-04-07 21:08:01 · 565 阅读 · 0 评论 -
线段树-操作格子
有n个格子,从左到右放成一排,编号为1-n。共有m次操作,有3种操作类型:1.修改一个格子的权值,2.求连续一段格子权值和,3.求连续一段格子的最大值。对于每个2、3操作输出你所求出的结果。输入格式第一行2个整数n,m。接下来一行n个整数表示n个格子的初始权值。接下来m行,每行3个整数p,x,y,p表示操作类型,p=1原创 2015-04-06 17:44:52 · 590 阅读 · 0 评论 -
幂方分解
问题描述 任何一个正整数都可以用2的幂次方表示。例如: 137=27+23+20 同时约定方次用括号来表示,即ab 可表示为a(b)。 由此可知,137可表示为: 2(7)+2(3)+2(0) 进一步:7= 22+2+20 (21用2表示) 3=2+20 所以最后137可表示为: 2(2(2)+2+2(0))+2(2+2(0))+2(0)原创 2015-03-31 19:29:56 · 831 阅读 · 0 评论 -
java的树结构(二叉树)
import java.util.*;public class Main{ ChainBin bt; public Main(){} public Main(ChainBin bt) { this.bt=bt; } public static void main(String[] args) { ChainBin root原创 2015-04-05 11:45:27 · 655 阅读 · 0 评论 -
字母图形
问题描述利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。输入格式输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。输出格式输出n行,每个m个字符,为你的图形。样例输入5 7样例输出原创 2015-03-30 21:30:49 · 534 阅读 · 0 评论 -
10进制转16进制
问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。输入格式原创 2015-03-31 08:47:49 · 1208 阅读 · 0 评论 -
查找
问题描述 给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交),如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。 输入格式 第一行一个数字L。 第二行是字符串S。 L大于0,且不超过S的长度。 输出格式 一行,题目要求的字符串。 输入样例1: 4 bbaabbaaaaa 输出样例1:原创 2015-04-04 16:41:10 · 573 阅读 · 0 评论 -
出现次数最多的整数
问题描述 编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。 输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列。 输出原创 2015-04-01 14:24:38 · 623 阅读 · 0 评论 -
用枚举法填运算符
演示一个 5 ? 5?5?5?=5 import java.util.*; public class Text1{ public static void main(String[]args){ int j ;//循环变量 int []type=new int[5];//类加运算符的样式 int sign;//保存运算的正负号 int result;//结果 int co原创 2015-02-25 16:55:38 · 820 阅读 · 0 评论 -
给定n个十六进制正整数,输出它们对应的八进制数。
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式 输出n行,每行为输入对应的八进制正整数。注意 输入的十六进制数不会有前导0,比如012A。 输出的八进制数也不能有前导原创 2015-03-28 21:18:29 · 7167 阅读 · 0 评论 -
字串
问题描述对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:0000000001000100001100100请按从小到大的顺序输出这32种01串。输入格式本试题没有输入。输出格式输出32行,按从小到大的顺序每行一个长度为5的01串。样例输出00000000010001000011public原创 2015-03-30 21:56:41 · 416 阅读 · 0 评论 -
特殊回文数
问题描述 123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式 输入一行,包含一个正整数n。 输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998 989989 998899 数据规模和约定 1<=n原创 2015-03-29 20:28:26 · 523 阅读 · 0 评论 -
特殊数字
问题描述 153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。 输出格式 按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。import java.util.*; class Main{ public static void main(String[] args) {原创 2015-03-29 21:41:59 · 564 阅读 · 0 评论 -
回文数列2
问题描述 1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。 输出格式 按从小到大的顺序输出满足条件的四位十进制数。import java.util.*; class Main{ public static void main(String[] args) { int a[]= new int[4];原创 2015-03-29 21:24:35 · 893 阅读 · 0 评论 -
查找整数
import java.io.*;public class Main{ public static void main(String[]args)throws Exception{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int a = Integer.parseI原创 2015-03-30 19:44:13 · 580 阅读 · 0 评论