算法提高 约数个数 时间限制:1.0s 内存限制:512.0MB 输入一个正整数N (1 样例输入 12 样例输出 6 样例说明 12的约数包括:1,2,3,4,6,12.共6个 import java.util.Scanner; public class 约数个数 { public static void main(String[] args) { Scanner sc =new Scanner(System.in); int n = sc.nextInt(); int count=0; fo…
试题 算法训练 1的个数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 输入正整数n,判断从1到n之中,数字1一共要出现几次.例如1123这个数,则出现了两次1.例如15,那么从1到15之中,一共出现了8个1. 输入格式 一个正整数n 输出格式 一个整数,表示1出现的资料 样例输入 15 样例输出 8 数据规模和约定 n不超过30000 import java.util.Scanner; public class 一的个数 { public static void main(…
试题 算法训练 猴子吃包子 问题描述 从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同:肉包每秒钟吃x个:韭菜包每秒钟吃y个:没有馅的包子每秒钟吃z个:现在有x1个肉包,y1个韭菜包,z1个没有馅的包子:问:猴子吃完这些包子要多久?结果保留p位小数. 输入格式 输入1行,包含7个整数,分别表示吃不同包子的速度和不同包子的个数和保留的位数. 输出格式 输出一行,包含1个实数,表示吃完所有包子的时间. 样例输入 4 3 2 20 30 15 2 样例输出 22.50…
试题 算法训练 大等于n的最小完全平方数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 输出大等于n的最小的完全平方数. 若一个数能表示成某个自然数的平方的形式,则称这个数为完全平方数 Tips:注意数据范围 输入格式 一个整数n 输出格式 大等于n的最小的完全平方数 样例输入 71711 样例输出 71824 数据规模和约定 n是32位有符号整数 import java.util.Scanner; public class 大等于n的最小平方数 { public stati…
试题 算法训练 Number Challenge 资源限制 时间限制:3.0s 内存限制:512.0MB 问题描述 定义d(n)为n的约数个数.现在,你有三个数a,b,c.你的任务是计算下面式子modulo 1073741824 (2^30)的值. 输入格式 三个正整数a,b,c. 输出格式 一个数,即上面式子modulo 1073741824 (2^30)的值. 样例输入 2 2 2 样例输出 20 数据规模和约定 a, b , c (1 ≤ a, b, c ≤ 2000) import ja…
算法训练 审美课 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 <审美的历程>课上有n位学生,帅老师展示了m幅画,其中有些是梵高的作品,另外的都出自五岁小朋友之手.老师请同学们分辨哪些画的作者是梵高,但是老师自己并没有答案,因为这些画看上去都像是小朋友画的--老师只想知道,有多少对同学给出的答案完全相反,这样他就可以用这个数据去揭穿披着皇帝新衣的抽象艺术了(支持帅老师_). 答案完全相反是指对每一幅画的判断都相反. 输入格式 第一行两个数n和m,表示学生数和图画数: 接下来…
试题 算法训练 多阶乘计算 问题描述 我们知道,阶乘n!表示n*(n-1)(n-2)-21, 类似的,可以定义多阶乘计算,例如:5!!=531,依次可以有n!..!(k个'!',可以简单表示为n(k)!)=n*(n-k)(n-2k)-(直到最后一个数<=0). 现给定一组数据n.k.m,当m=1时,计算并输出n(1)!+n(2)!+-+n(k)!的值,m=2时计算并输出n(1)!+n(2)!+-+n(k)!的各个位上的数字之和. 输入格式 两行,第一行为n和k,第二行为m. 输出格式 一行,为n…
试题 算法训练 第五次作业:字符串排序 问题描述 输入一个小写字符串,按从小到大的顺序输出. 输入格式 bcaed 输出格式 abcde 顶格输出,中间没有空格 样例输入 一个满足题目要求的输入范例. 例: bcaed 样例输出 与上面的样例输入对应的输出. 例: abcde 数据规模和约定 输入数据中每一个数的范围. 例:0<n,m<100, 0<=矩阵中的每个数<=1000. import java.util.Scanner; public class Main { publi…
试题 算法训练 求和求平均值 问题描述 从键盘输入10个浮点数,求出它们的和以及平均值,要求用函数实现 输入格式 测试数据的输入一定会满足的格式. 1 10 (1行10列的向量) 输出格式 要求用户的输出满足的格式. 2 1 (2行1列的矩阵) 样例输入 一个满足题目要求的输入范例. 例: 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 样例输出 与上面的样例输入对应的输出. 例: 57 5.7 数据规模和约定 输入数据中每一个数的范围. 例:0<n,m<10…
试题 算法训练 求平方和 问题描述 请用函数重载实现整型和浮点习型的两个数的平方和计算 输入格式 测试数据的输入一定会满足的格式. 2 2(2行2列,第1行整型,第2行浮点型) 输出格式 要求用户的输出满足的格式. 2 1(2行1列,第1行整型,第2行浮点型) 样例输入 一个满足题目要求的输入范例. 例: 2 2 3 4 3.1 4.1 样例输出 与上面的样例输入对应的输出. 例: 25 26.42 数据规模和约定 输入数据中每一个数的范围. 例:0<n,m<100, 0<=矩阵中的每个…
试题 算法训练 画图 问题描述 在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色. 下图给出了一个画了两个矩形的例子.第一个矩形是(1,1) 到(4, 4),用绿色和紫色表示.第二个矩形是(2, 3)到(6, 5),用蓝色和紫色表示.图中,一共有15个单位的面积被涂上颜色,其中紫色部分被涂了两次,但在计算面积时只计算一次.在实际的涂色过程中,所有的矩形都涂成统一的颜色,图中显示不同颜色仅为说明方便. 给出…
试题 算法训练 相邻数对 问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1. 输入格式 输入的第一行包含一个整数n,表示给定整数的个数. 第二行包含所给定的n个整数. 输出格式 输出一个整数,表示值正好相差1的数对的个数. 样例输入 6 10 2 6 3 7 8 样例输出 3 样例说明 值正好相差1的数对包括(2, 3), (6, 7), (7, 8). import java.util.Scanner; public class Main { public static…
试题 算法训练 Beaver's Calculator 问题描述 从万能词典来的聪明的海狸已经使我们惊讶了一次.他开发了一种新的计算器,他将此命名为"Beaver's Calculator 1.0".它非常特别,并且被计划使用在各种各样的科学问题中. 为了测试它,聪明的海狸邀请了n位科学家,编号从1到n.第i位科学家给这个计算器带来了 ki个计算题.第i个科学家带来的问题编号1到n,并且它们必须按照编号一个一个计算,因为对于每个问题的计算都必须依赖前一个问题的计算结果. 每个教授的每个…
试题 算法训练 Airport Configuration 问题描述 ACM机场是一个本地机场,对于大多数人来说,机场不是他们的终点或起点,而是中转站.机场有一个规划图.到达的大门在机场的北边(相当于空格).出发的大门在机场的南边(也相当于空格).两个正对着的大门距离相当于大门间的距离.每一个到达的大门只对应一个城市.每一个出发的大门也是这样.乘客到达的大门对应他们的起始城市,而出发大门对应他们的目标城市.因为这个问题,我们只需考虑转机的乘客. 转机的乘客会产生机场的交通堵塞.我们已经知道某两个…
试题 算法训练 Pollution Solution 问题描述 作为水污染管理部门的一名雇员,你需要监控那些被有意无意倒入河流.湖泊和海洋的污染物.你的其中一项工作就是估计污染物对不同的水生态系统(珊瑚礁.产卵地等等)造成的影响. 你计算所使用的模型已经在图1中被说明.海岸线(图1中的水平直线)为x轴,污染源位于原点(0, 0).污染的蔓延呈半圆形,多边形代表了被波及的生态系统.你需要计算出生态系统被污染的面积,也就是图中深蓝色部分. 输入格式 输入文件包含仅包含一组测试数据. 每组测试数据第一…
试题 算法训练 Balloons in a Box 问题描述 你要写一个程序,使得能够模拟在长方体的盒子里放置球形的气球. 接下来是模拟的方案.假设你已知一个长方体的盒子和一个点集.每一个点代表一个可以放置气球的位置.在一个点上放置一个气球,就是以这个点为球心,然后让这个球膨胀,直到触及盒子的边缘或者一个之前已经被放置好的气球.你不能使用一个在盒子外面或者在一个之前已经放置好的气球里面的点.但是,你可以按你喜欢的任意顺序使用这些点,而且你不需要每个点都用.你的目标是按照某种顺序在盒子里放置气球,…
试题 算法训练 Bit Compressor 问题描述 数据压缩的目的是为了减少存储和交换数据时出现的冗余.这增加了有效数据的比重并提高了传输速率.有一种压缩二进制串的方法是这样的: 将连续的n个1替换为n的二进制表示(注:替换发生当且仅当这种替换减少了二进制串的总长度) (译者注:连续的n个1的左右必须是0或者是串的开头.结尾) 比如:11111111001001111111111111110011会被压缩成10000010011110011.原串长为32,被压缩后串长为17. 这种方法的弊端…
试题 算法训练 Rotatable Number 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Bike是个十分喜欢数学的聪明孩子.他发明了"可旋转数",其灵感来自于142857. 正如你所见,142857是一个十分神奇的数,因为所有从它通过旋转得到的数都是它自己乘以1,2,3-,6(从1到数的长度).旋转一个数就是将它的最后一位数字放到最前面.比如说,通过旋转12345你能够得到这些数:12345,51234,45123,34512,23451.值得一提的是这里允…
算法训练 删除数组零元素 时间限制:1.0s 内存限制:512.0MB 提交此题 从键盘读入n个整数放入数组中,编写函数CompactIntegers,删除数组中所有值为0的元素,其后元素向数组首端移动.注意,CompactIntegers函数需要接受数组及其元素个数作为参数,函数返回值应为删除操作执行后数组的新元素个数.输出删除后数组中元素的个数并依次输出数组元素. 样例输入: (输入格式说明:5为输入数据的个数,3 4 0 0 2 是以空格隔开的5个整数) 5 3 4 0 0 2 样例输出:…
算法训练 最小乘积(基本型) 时间限制:1.0s 内存限制:512.0MB 问题描述 给两组数,各n个. 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小.要求程序输出这个最小值. 例如两组数分别为:1 3 -5和-2 4 1 那么对应乘积取和的最小值应为: (-5) * 4 + 3 * (-2) + 1 * 1 = -25 输入格式 第一个行一个数T表示数据组数.后面每组数据,先读入一个n,接下来两行每行n个数,每个数的绝对值小于等于1000. n<=8,T<=10…
算法训练 Torry的困惑(基本型) 时间限制:1.0s 内存限制:512.0MB 问题描述 Torry从小喜爱数学.一天,老师告诉他,像2.3.5.7--这样的数叫做质数.Torry突然想到一个问题,前10.100.1000.10000--个质数的乘积是多少呢?他把这个问题告诉老师.老师愣住了,一时回答不出来.于是Torry求助于会编程的你,请你算出前n个质数的乘积.不过,考虑到你才接触编程不久,Torry只要你算出这个数模上50000的值. 输入格式 仅包含一个正整数n,其中n<=10000…
算法训练 寻找数组中最大值 时间限制:1.0s 内存限制:512.0MB 提交此题 问题描述 对于给定整数数组a[],寻找其中最大值,并返回下标. 输入格式 整数数组a[],数组元素个数小于1等于100.输出数据分作两行:第一行只有一个数,表示数组元素个数:第二行为数组的各个元素. 输出格式 输出最大值,及其下标 样例输入 3 3 2 1 样例输出 3 0 import java.util.Scanner; public class 寻找数组中的最大值 { public static void…
算法训练 K好数 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数的数目.例如K = 4,L = 2的时候,所有K好数为11.13.20.22.30.31.33 共7个.由于这个数目很大,请你输出它对1000000007取模后的值. 输入格式 输入包含两个正整数,K和L. 输出格式 输出一个整数,表示答案对1000000007取模后的值. 样例输入…
算法训练 最大最小公倍数 时间限制:1.0s 内存限制:256.0MB 问题描述 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少. 输入格式 输入一个正整数N. 输出格式 输出一个整数,表示你找到的最小公倍数. 样例输入 9 样例输出 504 数据规模与约定 1 <= N <= 1000000 import java.util.Scanner; public class 最大最小公倍数 { public static void main(String[] args)…
算法训练 区间k大数查询 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个. 输入格式 第一行包含一个数n,表示序列长度. 第二行包含n个正整数,表示给定的序列. 第三个包含一个正整数m,表示询问个数. 接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个.序列元素从1开始标号. 输出格式 总共输出m行,每行一个数,表示询问的答案. 样例输入 5 1 2 3 4 5 2 1 5…
算法训练 6-1 递归求二项式系数值 时间限制:10.0s 内存限制:256.0MB 问题描述 样例输入 一个满足题目要求的输入范例. 3 10 样例输出 与上面的样例输入对应的输出. 数据规模和约定 输入数据中每一个数的范围. 例:结果在int表示时不会溢出. import java.util.Scanner; public class 递归求二项式系数 { public static void main(String[] args) { Scanner in = new Scanner(Sy…
算法训练 最大的算式 时间限制:1.0s 内存限制:256.0MB 问题描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大.因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号.例如: N=5,K=2,5个数字分别为1.2.3.4.5,可以加成: 12(3+4+5)=24 1*(2+3)(4+5)=45 (12+3)*(4+5)=45 -- 输入格式 输入文件共有二行,第一行为两个有空格隔开的整数,表示N…
算法训练 出现次数最多的整数 时间限制:1.0s 内存限制:512.0MB 提交此题 问题描述 编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20.然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来.如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值. 输入格式:第一行是一个整数N,N £ 20:接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列. 输出格式:输出只有一行,即出现次数最…
算法训练 Anagrams问题 时间限制:1.0s 内存限制:512.0MB 问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的.例如,"Unclear"和"Nuclear"."Rimon"和"MinOR"都是Anagrams.编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams.每一个单词的长度不会超过80个字符,而且是大小写无…
试题 算法训练 Professor Monotonic's Network 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 无聊的教授最近在做一项关于比较网络的实验.一个比较网络由若干个含两个输入端和两个输出端的比较器组成.如下图,一个比较器将会比较它的两个输入端的值i1和i2,把它们防止在输出端o1和o2上使得o1<=o2. 一个比较网络有n个输入端a1,a2,-,an和n个输出端b1,b2,-,bn.对于每个比较器,它的输入端要么直接连在比较网络的输入端上,要么连在另一个个…