![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
寒假练习
VicterTian
这个作者很懒,什么都没留下…
展开
-
分苹果
描述把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(注意:假如有3个盘子7个苹果,5,1,1和1,5,1 是同一种分法。)输入t,表示测试组数(t输出输出不同的分法样例输入17 3样例输出8public static void main(String args[]){ int a,m,n;原创 2017-03-10 18:50:41 · 560 阅读 · 0 评论 -
分糖果
问题描述 有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子。 一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。 反复进行这个游戏,直到所有小朋友的糖果数都相同为止。 你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入格式 程原创 2017-03-10 18:57:36 · 286 阅读 · 0 评论 -
蛇形填数(二)
描述1 2 3 4 512 13 14 611 15 710 89跟蛇形填数一样,只是填数要求按照三角形填。注意每组数据之间用空行隔开输入第一行有一个N,表示N组测试数据接下来每组数据包括一个数字X,表示三角形的边长,0输出输出之后填好之后的图样例输入254样例输出1 2 3 4 512 13原创 2017-03-10 18:54:21 · 264 阅读 · 0 评论 -
整除的尾数
描述一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢?输入输入数据有若干组,每组数据包含二个整数a,b(0输出对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有空格。样例输入200 401992 950 0样例输出00 40 8015 publ原创 2017-03-10 18:53:23 · 327 阅读 · 0 评论 -
最高位数字
描述求N^N的个位数字大家应该都会了,可是,N^N的最高位数字你会求吗?输入多组测试数据。每组数据输入一个正整数N(N≤1,000,000,000)。输出对于每组数据,输出N^N的最高位数字。样例输入34样例输出22public static void main(String[] args) { BigInteger num = ne原创 2017-03-10 18:51:34 · 829 阅读 · 0 评论 -
数字1的数量
描述给定一个十进制正整数N,写下从1开始,到N的所有正数,计算出其中出现所有1的个数。例如:n = 12,包含了5个1。1,10,12共包含3个1,11包含2个1,总共5个1。输入输入N(0 多组测试数据输出输出包含1的个数样例输入12样例输出5public static void main(String[] args){ Scanner sc=原创 2017-03-10 18:46:59 · 447 阅读 · 0 评论 -
世界末日
描述世界末日马上就要来临了,当然,每个人都想买到船票,但是由于船票有限,因此需要回答对一个问题才能买票。问题是这样的:给你一个数n (1 输入多组测试数据(最多100组)。首先输入一个数n,然后输入n个数。输出如果能找到一些数的和是n的倍数,输出"YES",否则输出"NO"。样例输入55 3 6 7 9样例输出YES public static vo原创 2017-03-10 18:41:54 · 354 阅读 · 0 评论 -
笨蛋的难题
描述 笨蛋之所以称为笨蛋,是因为他有点路痴。他一旦不高兴,就必然一个人漫无目的的出去走走。今天下雨了,他又不高兴了,怎么办?那就出去走呗,这不又丢了,这次幸好记下出来时的方向,并且在一张纸上密密麻麻的记下了他拐的弯(他很聪明吧,拐的弯都是90度的弯),0代表左拐,1代表右拐,那么多0、1,他实在看不下去了,正好遇见善良加聪明的你,你能告诉他,他现在面向哪吗?输入多组测试数据原创 2017-03-10 18:39:29 · 347 阅读 · 0 评论 -
核桃的数量
问题描述小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:1. 各组的核桃数量必须相同2. 各组内必须能平分核桃(当然是不能打碎的)3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)输入格式输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开(a,b,c输出格式输出原创 2017-03-10 18:36:22 · 305 阅读 · 0 评论 -
加法变乘法
我们都知道:1+2+3+ ... + 49 = 1225现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015 比如:1+2+3+...+10*11+12+...+27*28+29+...+49= 2015就是符合要求的答案。 请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。 注意:需要你提交的是一个整数,不要填原创 2017-03-10 18:35:14 · 236 阅读 · 0 评论 -
字符串对比
问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等。比如 Beijing 和 Hebei 2:两个字符串不仅长度相等,而且相应位置上的字符完全一致(区分大小写),比如 Beijing 和 Beijing 3:两个字符串长度相等,相应位置上的字符仅在不区分大小写的前提下才能达到完全一致(也就原创 2017-03-10 18:33:18 · 224 阅读 · 0 评论 -
芯片测试
问题描述 有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。 每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。 给出所有芯片的测试结果,问哪些芯片是好芯片。输入格式 输入数据第一行为一个整数n,表示芯片个数。 第二行到第n+原创 2017-03-10 18:27:56 · 437 阅读 · 0 评论 -
大数阶乘
描述我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?输入输入一个整数m(0<m<=5000)输出输出m的阶乘,并在输出结束之后输入一个换行符样例输入50样例输出30414093201713378043612608166064768844377641568960512000000000000 publ...原创 2017-03-10 19:04:55 · 230 阅读 · 0 评论 -
计算时间
问题描述 给定一个t,将t秒转化为HH:MM:SS的形式,表示HH小时MM分钟SS秒。HH,MM,SS均是两位数,如果小于10用0补到两位。输入格式 第一行一个数T(1输出格式 每组数据一行,HH:MM:SS。样例输入2086399样例输出00:00:0023:59:59 public static void main(St原创 2017-03-10 19:08:09 · 584 阅读 · 0 评论 -
世纪末的星期
有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日...... 1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(即xx99原创 2017-03-10 17:39:21 · 273 阅读 · 0 评论 -
整数划
描述将正整数n表示成一系列正整数之和:n=n1+n2+…+nk,其中n1≥n2≥…≥nk≥1,k≥1。正整数n的这种表示称为正整数n的划分。求正整数n的不同划分个数。例如正整数6有如下11种不同的划分:6; 5+1; 4+2,4+1+1; 3+3,3+2+1,3+1+1+1; 2+2+2,2+2+1+1,2+1+1+1+1; 1+1+1+1+1+1。原创 2017-03-10 18:07:59 · 573 阅读 · 0 评论 -
数数小木块
在墙角堆放着一堆完全相同的正方体小木块,如下图所示: 因为木块堆得实在是太有规律了,你只要知道它的层数就可以计算所有木块的数量了。现在请你写个程序给你任一堆木块的层数,求出这堆木块的数量. 输入第一行是一个整数N(N接下来的n行每行只有一个整数,表示这堆小木块的层数,输出对应每个输入的层数有一个输出,表示这堆小木块的总数量,每个输出占一行样例输入2原创 2017-03-10 18:16:09 · 1450 阅读 · 0 评论 -
字符串右移
描述LZQ最近迷上了字符串,于是他有一个问题想考你,聪明的你一定知道答案。问题如下:给你一个字符串,让你对其进行向右移动K次,输出新的字符串。输入输入数据有多组,每组有一个字符串STR与一个数字K,表示对字符串STR向右移动K位。输出输出新的字符串STR1.样例输入abcd1234 4sdfe123f 10样例输出1234abcd3fsdfe12pu原创 2017-03-10 18:48:09 · 663 阅读 · 0 评论 -
找球号
描述xiaod现在正在某个球场负责网球的管理工作。为了方便管理,他把每个球都编了号,且每个编号的球的总个数都是偶数。有一天,xiaod发现少了一个球,你能帮他找出丢的那个球的球号吗? 输入有多组测试数据。每组数据包括两行。第一行是一个整数N(0随后的一行是N个数,表示所剩的各个球的编号M(0输出对于每组数据,输出弄丢的那个球的球号。样例输入51 1 3原创 2017-03-10 18:38:34 · 333 阅读 · 0 评论 -
正则表达式
java中提供了对正则表达式的支持。有的时候,恰当地使用正则,可以让我们的工作事半功倍!如下代码用来检验一个四则运算式中数据项的数目,请填写划线部分缺少的代码。注意:只填写缺少代码,不要写任何多余内容,例如,已有的双引号。 public static int f(String s){ return s.split("\\p{Punct}").length;//代原创 2017-03-21 19:32:08 · 393 阅读 · 0 评论 -
蚂蚁感冒
长100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。 每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。 当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。 这些蚂蚁中,有1只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。 请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。 【数据格原创 2017-03-10 19:09:30 · 271 阅读 · 0 评论 -
矩形的个数
矩形的个数时间限制:1000 ms | 内存限制:65535 KB难度:1描述在一个3*2的矩形中,可以找到6个1*1的矩形,4个2*1的矩形3个1*2的矩形,2个2*2的矩形,2个3*1的矩形和1个3*2的矩形,总共18个矩形。给出A,B,计算可以从中找到多少个矩形。输入本题有多组输入数据(输入2个整数A,B(1输出原创 2017-03-28 12:51:02 · 360 阅读 · 0 评论 -
三羊献瑞
观察下面的加法算式: 祥 瑞 生 辉 + 三 羊 献 瑞------------------- 三 羊 生 瑞 气其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。很水很暴力的方法,效率极低public static void main原创 2017-03-10 17:28:16 · 405 阅读 · 0 评论 -
最小乘积
问题描述 给两组数,各n个。 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小。要求程序输出这个最小值。 例如两组数分别为:1 3 -5和-2 4 1 那么对应乘积取和的最小值应为: (-5) * 4 + 3 * (-2) + 1 * 1 = -25输入格式 第一个行一个数T表示数据组数。后面每组数据,先读入一个n,接下来两原创 2017-03-10 19:07:05 · 297 阅读 · 0 评论 -
阶乘最右边非0数
问题描述 一个整数n的阶乘可以写成n!,它表示从1到n这n个整数的乘积。阶乘的增长速度非常快,例如,13!就已经比较大了,已经无法存放在一个整型变量中;而35!就更大了,它已经无法存放在一个浮点型变量中。因此,当n比较大时,去计算n!是非常困难的。幸运的是,在本题中,我们的任务不是去计算n!,而是去计算n!最右边的那个非0的数字是多少。例如,5!= 1*2*3*4*5 = 120,因此5!最...原创 2017-03-10 18:23:27 · 2296 阅读 · 2 评论 -
字符串比较
独立实现标准字符串库的strcmp函数,即字符串比较函数,从键盘输入两个字符串,按字典序比较大小,前者大于后者输出1,前者小于后者输出-1,两者相等输出0。样例输入apple one样例输出-1样例输入hello he样例输出1样例输入hello hello样例输出0此题在Java里可以用comperTo方法快速作答:public stati原创 2017-03-10 18:18:51 · 849 阅读 · 0 评论 -
完美的代价
问题描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。 交换的定义是:交换两个相邻的字符 例如mamad 第一次交换 ad: mamda 第二次交换 md: madma 第三次交换 ma: madam (回文!完美!)输入格式原创 2017-03-10 17:53:11 · 193 阅读 · 0 评论 -
牌型种数
小明被劫持到X赌城,被迫与其他3人玩牌。一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。这时,小明脑子里突然冒出一个问题:如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始请提交代码算出正确结果,牌型组合一共有多少种呢?private static int sum = 0; public static void main(原创 2017-03-10 17:44:34 · 208 阅读 · 0 评论 -
奖券数目
有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。 请提交代码算出正确结果(一个整数),不要写任何多余的内容或说明性文字。 public s原创 2017-03-10 17:43:03 · 402 阅读 · 0 评论 -
分数加减法
编写一个程序,实现两个分数的加减法输入输入包含多行数据 每行数据是一个字符串,格式是"a/boc/d"。 其中a, b,c, d是一个0-9的整数。o是运算符"+"或者"-"。 数据以EOF结束 输入数据保证合法输出对于输入数据的每一行输出两个分数的运算结果。 注意结果应符合书写习惯,没有多余的符号、分子、分母,并且化简至最简分数样例输入1/8+3原创 2017-03-10 17:37:22 · 291 阅读 · 0 评论 -
日期计算
如题,输入一个日期,格式如:201010 24 ,判断这一天是这一年中的第几天。输入第一行输入一个数N(0输出每组输入数据的输出占一行,输出判断出的天数n样例输入32000 4 52001 5 42010 10 24样例输出96124297 public static void main(String[] args){ S原创 2017-03-10 17:35:07 · 252 阅读 · 0 评论 -
小学生算术(进位问题)
很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。输入输入两个正整数m,n.(m,n,都是三位数)输出输出m,n,相加时需要进位多少次。样例输入123 456555 555123 5940 0样例输出03 1pub原创 2017-03-10 17:33:23 · 2215 阅读 · 0 评论 -
6174问题
假设你有一个各位数字互不相同的四位数,把所有的数字从大到小排序后得到a,从小到大后得到b,然后用a-b替换原来这个数,并且继续操作。例如,从1234出发,依次可以得到4321-1234=3087、8730-378=8352、8532-2358=6174,又回到了它自己!现在要你写一个程序来判断一个四位数经过多少次这样的操作能出现循环,并且求出操作的次数 比如输入1234执行顺序是1234-原创 2017-03-10 17:29:54 · 375 阅读 · 0 评论 -
分数拆分
输入正整数k,找到所有的正整数x≥y,使得。样例输入:212样例输出:21/2=1/6+1/31/2=1/4+1/481/12=1/156+1/131/12=1/84+1/141/12=1/60+1/151/12=1/48+1/161/12=1/36+1/181/12=1/30+1/201/12=1/28+1/211/12=1/24+原创 2017-03-10 17:23:41 · 430 阅读 · 0 评论 -
蛇形填数
在n*n方阵里填入1,2,…,n*n,要求填成蛇形。例如n=4时方阵为10 11 12 19 16 13 28 15 14 37 6 5 4上面的方阵中,多余的空格只是为了便于观察规律,不必严格输出。n≤8。public static void main(String[] args){ Scanner sc原创 2017-03-10 17:22:46 · 215 阅读 · 0 评论 -
开灯问题
有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯被打开,开着灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输入:n和k,输出开着的灯编号。k≤n≤1000。样例输入:7 3样例输出:1 5 6 7public static void main(String[]原创 2017-03-10 17:19:12 · 273 阅读 · 0 评论 -
回形取数
回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。 输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。 输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。样例输入3 31 2 34 5 67 8 9样例输出原创 2017-03-10 17:18:21 · 311 阅读 · 0 评论 -
十六进制转八进制
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1 接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式 输出n行,每行为输入对应的八进制正整数。注意 输入的十六进制数不会有前导0,比如012A。 输出的八进制数也不能有前原创 2017-03-10 17:54:22 · 253 阅读 · 0 评论 -
矩形面积交
问题描述 平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。输入格式 输入仅包含两行,每行描述一个矩形。 在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。输出格式 输出仅包含一个实数,为交的面积,保留到小数后两位。样例输入1 1 3原创 2017-03-10 17:57:22 · 311 阅读 · 0 评论 -
星系炸弹
在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。每个炸弹都可以设定多少天之后爆炸。比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19原创 2017-03-10 18:17:19 · 445 阅读 · 1 评论