试题 算法训练 Beaver's Calculator 问题描述 从万能词典来的聪明的海狸已经使我们惊讶了一次.他开发了一种新的计算器,他将此命名为"Beaver's Calculator 1.0".它非常特别,并且被计划使用在各种各样的科学问题中. 为了测试它,聪明的海狸邀请了n位科学家,编号从1到n.第i位科学家给这个计算器带来了 ki个计算题.第i个科学家带来的问题编号1到n,并且它们必须按照编号一个一个计算,因为对于每个问题的计算都必须依赖前一个问题的计算结果. 每个教授的每个…
试题 算法训练 猴子吃包子 问题描述 从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同:肉包每秒钟吃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…
问题描述 在年轻的时候,我们故事中的英雄--国王 Copa--他的私人数据并不是完全安全地隐蔽.对他来说是,这不可接受的.因此,他发明了一种密码,好记又难以破解.后来,他才知道这种密码是一个长度为奇数的回文串. Copa 害怕忘记密码,所以他决定把密码写在一张纸上.他发现这样保存密码不安全,于是他决定按下述方法加密密码:他选定一个整数 X ,保证 X 不小于 0 ,且 2X 严格小于串长度.然后他把密码分成 3 段,最前面的 X 个字符为一段,最后面的 X 个字符为一段,剩余的字符为一段.不妨把…
试题 算法训练 报数 问题描述 现有n个同学站成一圈,顺时针编号1至n.从1号同学开始顺时针1/2报数,报到1的同学留在原地,报到2的同学退出圆圈,直到只剩一名同学为止.问最后剩下的同学编号. 输入格式 仅一行,一个正整数n. 输出格式 仅一行,一个正整数. 样例输入 400 样例输出 289 数据规模和约定 n<=2000000 PS: 这个题你把他反过来想,他问的就是最后一个人,也就是最后一个被淘汰的人 你不如,从第一个人开始找,然后涨到那么多人,他的位置就是最后一个人的位置 import…
问题描述 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的).给定两个城市之间的距离D1.汽车油箱的容量C(以升为单位).每升汽油能行驶的距离D2.出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di.每升汽油价格Pi(i=1,2,--N).计算结果四舍五入至小数点后两位.如果无法到达目的地,则输出"No Solution". 输入格式 第一行为4个实数D1.C.D2.P与一个非负整数N: 接下来N行,每行两个实数Di.Pi. 输出格式…
算法训练 审美课 时间限制: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…
试题 算法训练 找零钱 问题描述 有n个人正在饭堂排队买海北鸡饭.每份海北鸡饭要25元.奇怪的是,每个人手里只有一张钞票(每张钞票的面值为25.50.100元),而且饭堂阿姨一开始没有任何零钱.请问饭堂阿姨能否给所有人找零(假设饭堂阿姨足够聪明) 输入格式 第一行一个整数n,表示排队的人数. 接下来n个整数a[1],a[2],-,a[n].a[i]表示第i位学生手里钞票的价值(i越小,在队伍里越靠前) 输出格式 输出YES或者NO 样例输入 4 25 25 50 50 样例输出 YES 样例输入…
试题 算法训练 第五次作业:字符串排序 问题描述 输入一个小写字符串,按从小到大的顺序输出. 输入格式 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<=矩阵中的每个…
试题 算法训练 天数计算 问题描述 编写函数求某年某月某日(**** ** **)是这一年的第几天 .提示:要考虑闰年,闰年的2月是29天(闰年的条件:是4的倍数但不是100的倍数,或者是400的倍数).编写主函数,输入年月日,测试该函数并输出结果. 输入格式 按"yyyy mm dd"的格式输入年月日 输出格式 输出一个整数形式的计算结果 样例输入 1990 5 10 样例输出 130 数据规模和约定 根据实际输入合法的日期 import java.util.Scanner; pub…
试题 算法训练 画图 问题描述 在一个定义了直角坐标系的纸上,画一个(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…
试题 算法训练 Cowboys 问题描述 一个间不容发的时刻:n个牛仔站立于一个环中,并且每个牛仔都用左轮手枪指着他旁边的人!每个牛仔指着他顺时针或者逆时针方向上的相邻的人.正如很多西部片那样,在这一刻,绳命是入刺的不可惜--对峙的场景每秒都在变化.每秒钟牛仔们都会分析局势,当一对相邻的牛仔发现他们正在互指的时候,就会转过身.一秒内每对这样的牛仔都会转身.所有的转身都同时在一瞬间发生.我们用字母来表示牛仔所指的方向."A"表示顺时针方向,"B"表示逆时针方向.如此,…
试题 算法训练 Lift and Throw 问题描述 给定一条标有整点(1, 2, 3, -)的射线. 定义两个点之间的距离为其下标之差的绝对值. Laharl, Etna, Flonne一开始在这条射线上不同的三个点, 他们希望其中某个人能够到达下标最大的点. 每个角色只能进行下面的3种操作, 且每种操作不能每人不能进行超过一次. 1.移动一定的距离 2.把另一个角色高举过头 3.将举在头上的角色扔出一段距离 每个角色有一个movement range参数, 他们只能移动到没有人的位置, 并…
试题 算法训练 Airport Configuration 问题描述 ACM机场是一个本地机场,对于大多数人来说,机场不是他们的终点或起点,而是中转站.机场有一个规划图.到达的大门在机场的北边(相当于空格).出发的大门在机场的南边(也相当于空格).两个正对着的大门距离相当于大门间的距离.每一个到达的大门只对应一个城市.每一个出发的大门也是这样.乘客到达的大门对应他们的起始城市,而出发大门对应他们的目标城市.因为这个问题,我们只需考虑转机的乘客. 转机的乘客会产生机场的交通堵塞.我们已经知道某两个…
试题 算法训练 Pollution Solution 问题描述 作为水污染管理部门的一名雇员,你需要监控那些被有意无意倒入河流.湖泊和海洋的污染物.你的其中一项工作就是估计污染物对不同的水生态系统(珊瑚礁.产卵地等等)造成的影响. 你计算所使用的模型已经在图1中被说明.海岸线(图1中的水平直线)为x轴,污染源位于原点(0, 0).污染的蔓延呈半圆形,多边形代表了被波及的生态系统.你需要计算出生态系统被污染的面积,也就是图中深蓝色部分. 输入格式 输入文件包含仅包含一组测试数据. 每组测试数据第一…
试题 算法训练 Balloons in a Box 问题描述 你要写一个程序,使得能够模拟在长方体的盒子里放置球形的气球. 接下来是模拟的方案.假设你已知一个长方体的盒子和一个点集.每一个点代表一个可以放置气球的位置.在一个点上放置一个气球,就是以这个点为球心,然后让这个球膨胀,直到触及盒子的边缘或者一个之前已经被放置好的气球.你不能使用一个在盒子外面或者在一个之前已经放置好的气球里面的点.但是,你可以按你喜欢的任意顺序使用这些点,而且你不需要每个点都用.你的目标是按照某种顺序在盒子里放置气球,…
试题 算法训练 字符串长度 问题描述 输入一个字符串,输出其长度. 输入格式 输入一个字符串 输出格式 输出字符串长度 样例输入 一个满足题目要求的输入范例. HelloWorld 样例输出 10 数据规模和约定 输入的字符串的长度0<N<100 PS: 总归总还是IO快,无敌(●ˇ∀ˇ●) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public cl…
试题 算法训练 Remember the A La Mode 问题描述 Hugh Samston经营着一个为今年的ICPC世界总决赛的参与者提供甜点的餐饮服务.他将会提供上面有冰激凌的饼片.为了满足不同的需求,他准备了许多不同的饼片和冰激凌. Hugh希望以一份饼片上一份冰激凌的方式来提供甜点.然而,作为一个商人,他希望能赚到尽可能多的钱.他知道不同种类的饼片和冰激凌组合的价格,也知道那些冰激凌和那些饼片不能组合在一起. Hugh想根据每种饼片和冰激凌的数量,以及之前提到的不同组合的情况,确定他…
试题 算法训练 Bit Compressor 问题描述 数据压缩的目的是为了减少存储和交换数据时出现的冗余.这增加了有效数据的比重并提高了传输速率.有一种压缩二进制串的方法是这样的: 将连续的n个1替换为n的二进制表示(注:替换发生当且仅当这种替换减少了二进制串的总长度) (译者注:连续的n个1的左右必须是0或者是串的开头.结尾) 比如:11111111001001111111111111110011会被压缩成10000010011110011.原串长为32,被压缩后串长为17. 这种方法的弊端…
试题 算法训练 My Bad 问题描述 一个逻辑电路将其输入通过不同的门映射到输出,在电路中没有回路.输入和输出是一个逻辑值的有序集合,逻辑值被表示为1和0.我们所考虑的电路由与门(and gate,只有在两个输入都是1的时候,输出才为1).或门(or gate,只要两个输入中有一个是1,输出就是1).异或门(exclusive or(xor)gate,在两个输入中仅有一个是1,输出才是1)和非门(not gate,单值输入,输出是输入的补)组成.下图给出两个电路. 不幸的是,在实际中,门有时会…
试题 算法训练 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…
试题 算法训练 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个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出.要求尽可能使用函数实现程序代码.平均值为小数的只保留其整数部分. 样例输入: 5 3 4 0 0 2 样例输出: 9 1 样例输入: 7 3 2 7 5 2 9 1 样例输出: 29 4 import java.util.Scanner; public class 动态数组使用 { public static void main(Str…
算法训练 删除数组零元素 时间限制: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…