算法
lancefate
这个作者很懒,什么都没留下…
展开
-
python 大数求和
# encoding:utf-8from numpy import *x1 = raw_input()x2 = raw_input()# 按照从小到大存储array1 = array([int(i) for i in x1[::-1]])array2 = array([int(i) for i in x2[::-1]])array3 = [0 for x in range(100)]...原创 2018-03-09 16:18:13 · 2353 阅读 · 0 评论 -
蓝桥杯练习系统(入门)
1 A+Bimport java.util.Scanner;/** * Created by m1786 on 2017/3/3. */public class Main{ public static void main(String args[]){ int a,b; Scanner sc=new Scanner(Sy原创 2017-03-24 12:26:51 · 556 阅读 · 0 评论 -
带分数
标题:带分数 100 可以表示为带分数的形式:100 = 3 + 69258 / 714 还可以表示为:100 = 82 + 3546 / 197 注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。 类似这样的带分数,100 有 11 种表示法。题目要求:从标准输入读入一个正整数N (N<1000原创 2017-03-23 21:42:03 · 562 阅读 · 0 评论 -
连号区间数
标题:连号区间数 小明这些天一直在思考这样一个奇怪而有趣的问题: 在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是: 如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。 当N很小的时候,小明可以很快地算出答案,但是当N原创 2017-03-23 21:40:33 · 274 阅读 · 0 评论 -
分糖果
标题:分糖果 有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子。 一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。 反复进行这个游戏,直到所有小朋友的糖果数都相同为止。 你的任务是预测在已知的初始糖果情形下,老师一共需原创 2017-03-14 14:45:04 · 312 阅读 · 0 评论 -
幸运数
标题:幸运数 幸运数是波兰数学家乌拉姆命名的。它采用与生成素数类似的“筛法”生成。 首先从1开始写出自然数1,2,3,4,5,6,.... 1 就是第一个幸运数。 我们从2这个数开始。把所有序号能被2整除的项删除,变为: 1 _ 3 _ 5 _ 7 _ 9 .... 把它们缩紧,重新记序,为:原创 2017-03-23 17:27:37 · 537 阅读 · 0 评论 -
有理数类
标题:有理数类 有理数就是可以表示为两个整数的比值的数字。一般情况下,我们用近似的小数表示。但有些时候,不允许出现误差,必须用两个整数来表示一个有理数。 这时,我们可以建立一个“有理数类”,下面的代码初步实现了这个目标。为了简明,它只提供了加法和乘法运算。/** * Created by m1786 on 2017/3/23. */pub原创 2017-03-23 15:08:26 · 729 阅读 · 0 评论 -
奇怪的分式
标题:奇怪的分式 上小学的时候,小明经常自己发明新算法。一次,老师出的题目是: 1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) 老师刚想批评他,转念一想,这个答案凑巧也对啊,真是见鬼! 对于分子、分母都是 1~9 中的一位数的情况,还有哪些算式可以这原创 2017-03-23 14:52:53 · 413 阅读 · 0 评论 -
扑克序列
标题:扑克序列 A A 2 2 3 3 4 4, 一共4对扑克牌。请你把它们排成一行。 要求:两个A中间有1张牌,两个2之间有2张牌,两个3之间有3张牌,两个4之间有4张牌。 请填写出所有符合要求的排列中,字典序最小的那个。例如:22AA3344 比 A2A23344 字典序小。当然,它们都不是满足要求的答案。请通过浏览原创 2017-03-23 14:51:14 · 502 阅读 · 0 评论 -
全排列
/** * Created by m1786 on 2017/3/20. */public class 全排列 { static int a[]={1,2,3,4}; public static void main(String args[]){ dfs(0,4); } static void dfs(int k,int n){原创 2017-03-23 14:49:57 · 218 阅读 · 0 评论 -
三部排序
标题:三部排序 一般的排序有许多经典算法,如快速排序、希尔排序等。 但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。 比如,对一个整型数组中的数字进行分类排序: 使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特原创 2017-03-23 14:49:32 · 387 阅读 · 0 评论 -
字串统计
import java.util.Scanner;/** * Created by m1786 on 2017/3/31. * *字串统计 给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交), *如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。 *输入样例1: 4 bbaabbaaaaa 输出样例1:原创 2017-03-31 20:58:47 · 497 阅读 · 0 评论 -
矩阵乘法
import java.util.Scanner;/***矩阵乘法 输入两个矩阵,分别是m*s,s*n大小。输出两个矩阵相乘的结果。*/public class 矩阵乘法 { public static void main(String args[]){ Scanner sc=new Scanner(System.in); int m=sc.next原创 2017-03-31 21:30:59 · 228 阅读 · 0 评论 -
大小写转换
import java.util.Scanner;/** * Created by m1786 on 2017/3/31. */public class 大小写转换 { public static void main(String args[]){ String str; Scanner sc=new Scanner(System.in);原创 2017-03-31 21:35:35 · 559 阅读 · 0 评论 -
快速排序
package 算法;public class 快排 { static int items[]=new int[]{18,21,1,8,19,15,17,18}; public static void main(String args[]){ quickSort(items,0,7); for(int i=0;i<8;i++)原创 2017-04-03 16:22:18 · 359 阅读 · 0 评论 -
java中printf
%c 单个字符 %d 十进制整数 %f 十进制浮点数 %o 八进制数 %s 字符串 %u 无符号十进制数 %x 十六进制数 %% 输出百转载 2017-04-02 16:37:33 · 539 阅读 · 0 评论 -
循环节长度
循环节长度两个整数做除法,有时会产生循环小数,其循环部分称为:循环节。比如,11/13=6=>0.846153846153..... 其循环节为[846153] 共有6位。下面的方法,可以求出循环节的长度。请仔细阅读代码,并填写划线部分缺少的代码。 public static int f(int n, int m) { n = n % m;原创 2017-04-02 15:50:35 · 822 阅读 · 0 评论 -
半数集
import java.util.Scanner;/** * Created by m1786 on 2017/4/2. */public class 半数集 { static int a[]=new int[1001]; public static void main(String args[]){ Scanner sc=new Scanner(System.原创 2017-04-02 15:48:49 · 322 阅读 · 0 评论 -
农民种地(图的搜索)
import java.util.Scanner;/** * Created by m1786 on 2017/4/2. * 寻找一个可行解 */public class 农民种地 { static int n; static int m; static int visited; static boolean flag; static int coun原创 2017-04-02 12:39:34 · 559 阅读 · 0 评论 -
碉堡问题
import java.util.Scanner;/** * Created by m1786 on 2017/4/2. */public class 碉堡问题 { static char a[][]=new char[4][4]; static String s[]=new String[4]; static int iBest=0; static int原创 2017-04-02 10:49:43 · 565 阅读 · 0 评论 -
八皇后(二维数组回溯法实现)
import java.util.Scanner;/** * Created by m1786 on 2017/4/1. */public class 八皇后 { static int nnn=8; static int sum=0; static int x[][]=new int[nnn][nnn]; public static void main(Stri原创 2017-04-01 21:08:21 · 2439 阅读 · 1 评论 -
数字三角形
数字三角形 (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大。 ●每一步可沿左斜线向下或右斜线向下走; ●1<三角形行数≤100; ●三角形中的数字为整数0,1,…99; 7 3 8 8 1 0 2 7原创 2017-03-30 09:48:14 · 389 阅读 · 0 评论 -
Anagrams问题
Anagrams问题 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”和“MinOR”都是Anagrams。编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams。每一个单词的长度不会超过80个字符,而且是大小写无关的。 输入格式:输入有两行原创 2017-03-30 20:55:08 · 339 阅读 · 0 评论 -
区间k大数查询
import java.util.*;/***区间k大数查询 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 */public class 区间k大数查询 { public static void main(String args[]){ int a[]=new int[10001]; Scanner sc=new Scanner原创 2017-04-01 11:41:09 · 355 阅读 · 0 评论 -
错误票据
标题:错误票据 某涉密单位下发了某种票据,并要在年终全部收回。 每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。 你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能发生原创 2017-03-23 14:48:45 · 279 阅读 · 0 评论 -
文章标题
字母图形 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。import java.util.Scanner;public class M原创 2017-03-30 09:48:58 · 278 阅读 · 0 评论 -
文章标题
问题描述 每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求的人(比如都是租鞋或都是还鞋)交换位置是同一种排法) 输入格式 两个整数,表示m和n 输出格式原创 2017-03-30 09:47:15 · 233 阅读 · 0 评论 -
今有7对数字:两个1,两个2,两个3,...两个7,把它们排成一行。
今有7对数字:两个1,两个2,两个3,...两个7,把它们排成一行。要求,两个1间有1个其它数字,两个2间有2个其它数字,以此类推,两个7之间有7个其它数字。如下就是一个符合要求的排列:17126425374635当然,如果把它倒过来,也是符合要求的。请你找出另一种符合要求的排列法,并且这个排列法是以74开头的。注意:只填写这个14位的整数,不能原创 2017-03-07 14:02:34 · 2438 阅读 · 0 评论 -
x的x次幂
如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗?显然,这个值是介于2和3之间的一个数字。请把x的值计算到小数后6位(四舍五入),并填写这个小数值。注意:只填写一个小数,不要写任何多余的符号或说明。2.506184public class x的x次方 { public st原创 2017-03-07 14:01:39 · 1242 阅读 · 0 评论 -
调和级数
1/1 + 1/2 + 1/3 + 1/4 + ... 在数学上称为调和级数。它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字。但是,它发散的很慢:前1项和达到 1.0前4项和才超过 2.0前83项的和才超过 5.0那么,请你计算一下,要加多少项,才能使得和达到或超过 15.0 呢?请填写这个整数。注意原创 2017-03-07 14:00:41 · 2963 阅读 · 0 评论 -
java中正则表达式
java中提供了对正则表达式的支持。有的时候,恰当地使用正则,可以让我们的工作事半功倍!如下代码用来检验一个四则运算式中数据项的数目,请填写划线部分缺少的代码。注意:只填写缺少代码,不要写任何多余内容,例如,已有的双引号。public class A{public static int f(String s){return s.spl原创 2017-03-07 14:00:10 · 503 阅读 · 0 评论 -
五星填数
标题:五星填数如【图1.png】的五星图案节点填上数字:1~12,除去7和11。要求每条直线上数字和相等。如图就是恰当的填法。请你利用计算机搜索所有可能的填法有多少种。注意:旋转或镜像后相同的算同一种填法。请提交表示方案数目的整数,不要填写任何其它内容。/** * Created by m1786 on 201原创 2017-03-19 21:56:05 · 436 阅读 · 0 评论 -
振兴中华
标题: 振兴中华 小明参加了学校的趣味运动会,其中的一个项目是:跳格子。 地上画着一些格子,每个格子里写一个字,如下所示:(也可参见p1.jpg)从我做起振我做起振兴做起振兴中起振兴中华 比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。 要原创 2017-03-09 13:25:37 · 314 阅读 · 0 评论 -
世纪末的星期
标题: 世纪末的星期 曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日...... 1999年的12月31日是星原创 2017-03-09 12:59:47 · 312 阅读 · 0 评论 -
马虎的算式
标题: 马虎的算式 小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。 有一次,老师出的题目是:36 x 495 = ? 他却给抄成了:396 x 45 = ? 但结果却很戏剧性,他的答案竟然是对的!! 因为 36 * 495 = 396 * 45 = 17820 类似这原创 2017-03-09 12:58:36 · 274 阅读 · 0 评论 -
分机号
标题:分机号X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位。比如:751,520,321 都满足要求,而,766,918,201 就不符合要求。现在请你计算一下,按照这样的规定,一共有多少个可用的3位分机号码?请直接提交该数字,不要填写任何多余的内容。120原创 2017-03-18 13:23:57 · 1065 阅读 · 0 评论 -
数独
你一定听说过“数独”游戏。如【图1.png】,玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个同色九宫内的数字均含1-9,不重复。数独的答案都是唯一的,所以,多个解也称为无解。本图的数字据说是芬兰数学家花了3个月的时间设计出来的较难的题目。但对会使用计算机编程的你来说,恐怕易如反掌了。本题的要求就是输入数独题目,程序原创 2017-03-17 21:26:48 · 393 阅读 · 0 评论 -
勾股定理,西方称为毕达哥拉斯定理
勾股定理,西方称为毕达哥拉斯定理,它所对应的三角形现在称为:直角三角形。 已知直角三角形的斜边是某个整数,并且要求另外两条边也必须是整数。 求满足这个条件的不同直角三角形的个数。【数据格式】输入一个整数 n (0要求输出一个整数,表示满足条件的直角三角形个数。例如,输入:5程序应该输出:1再例如,输入:100原创 2017-03-07 14:03:00 · 2920 阅读 · 1 评论 -
数独
你一定听说过“数独”游戏。如【图1.png】,玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个同色九宫内的数字均含1-9,不重复。数独的答案都是唯一的,所以,多个解也称为无解。本图的数字据说是芬兰数学家花了3个月的时间设计出来的较难的题目。但对会使用计算机编程的你来说,恐怕易如反掌了。本题的要求就是输入数独题目,程序原创 2017-03-07 15:04:14 · 307 阅读 · 0 评论 -
奇怪的分式
14标题:奇怪的分式 上小学的时候,小明经常自己发明新算法。一次,老师出的题目是: 1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) 老师刚想批评他,转念一想,这个答案凑巧也对啊,真是见鬼! 对于分子、分母都是 1~9 中的一位数的情况,还有哪原创 2017-03-13 21:53:30 · 233 阅读 · 0 评论