
蓝桥杯算法训练
文章平均质量分 54
一个有理想的苦逼程序员
我秃了,但更强了
展开
-
算法训练 2的次幂表示(java)
问题描述任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。 将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=27+23+2^0 现在约定幂次用括号来表示,即a^b表示为a(b) 此时,137可表示为:2(7)+2(3)+2(0) 进一步:7=22+2+20 (2^1用2表示) 3=2+2^0 所以最后1...原创 2019-02-03 20:29:37 · 1260 阅读 · 0 评论 -
正六面体染色(java)
问题描述正六面体用4种颜色染色。共有多少种不同的染色样式?(要考虑六面体可以任意旋转、翻转。)解题思路:刚看到这个问题的时候本人也是毫无头绪,不知如何下手,用算法很难去解决这个问题,但是经过百度之后发现这其实是一个数学问题——burnside引理,这个引理公式非常完美的解决了多边形染色问题。在这里附上burnside引理概念点我了解什么是burnside引理,想要了解概念的小伙伴可以去...原创 2019-03-21 15:31:55 · 583 阅读 · 0 评论 -
算法提高 P0102(java)
用户输入三个字符,每个字符取值范围是0-9,A-F。然后程序会把这三个字符转化为相应的十六进制整数,并分别以十六进制,十进制,八进制输出,十六进制表示成3位,八进制表示成4位,若不够前面补0。(不考虑输入不合法的情况)输入 1D5输出(注意冒号后面有一个空格) Hex: 0x1D5 Decimal: 469 Octal: 0725解题思路:本题主要考察进制转换的运用,转换...原创 2019-03-16 11:51:40 · 372 阅读 · 0 评论 -
算法提高 上帝造题五分钟(java)
问题描述 第一分钟,上帝说:要有题。于是就有了L,Y,M,C 第二分钟,LYC说:要有向量。于是就有了长度为n写满随机整数的向量 第三分钟,YUHCH说:要有查询。于是就有了Q个查询,查询向量的一段区间内元素的最小值 第四分钟,MZC说:要有限。于是就有了数据范围 第五分钟,CS说:要有做题的。说完众神一哄而散,留你来收拾此题输入格式 第一行两个正整数n和Q,表示向量长度...原创 2019-03-14 19:34:46 · 219 阅读 · 0 评论 -
算法提高 复数归一化(java)
问题描述编写函数Normalize,将复数归一化,即若复数为a+bi,归一化结果为a/sqrt(aa+bb) + ib/sqrt(aa+b*b) 。使用结构体指针类型作为函数参数可能是必要的。其中实部和虚部由键盘输入,输出为归一化结果,如果归一化结果的实部或虚部为小数的要求保留一位小数。样例输入:(格式说明:3 4 分别为以空格隔开的实数的实部和虚部)3 4样例输出:0.6+0.8i样...原创 2019-02-13 10:50:42 · 519 阅读 · 0 评论 -
算法提高 约数个数(java)
输入一个正整数N样例输入12样例输出6样例说明 12的约数包括:1,2,3,4,6,12。共6个解题思路:本题主要考察对约数的认识,比较简单代码如下:import java.util.Scanner;public class Main{ public static void main(String[] args) { Scanner sc = new Scanner...原创 2019-02-12 12:46:08 · 2581 阅读 · 0 评论 -
算法提高 第二大整数(java)
问题描述编写一个程序,读入一组整数(不超过20个),当用户输入0时,表示输入结束。然后程序将从这组整数中,把第二大的那个整数找出来,并把它打印出来。 说明: (1)0表示输入结束,它本身并不计入这组整数中。 (2)在这组整数中,既有正数,也可能有负数。 (3)这组整数的个数不少于2个。 输入格式: 输入只有一行,包括若干个整数,中间用空格隔开,最后一个整数为0。 输出...原创 2019-02-12 11:30:32 · 604 阅读 · 0 评论 -
算法提高 逆序排列(java)
问题描述编写一个程序,读入一组整数(不超过20个),并把它们保存在一个整型数组中。当用户输入0时,表示输入结束。然后程序将把这个数组中的值按逆序重新存放,并打印出来。例如:假设用户输入了一组数据:7 19 -5 6 2 0,那么程序将会把前五个有效数据保存在一个数组中,即7 19 -5 6 2,然后把这个数组中的值按逆序重新存放,即变成了2 6 -5 19 7,然后把它们打印出来。 输入格式...原创 2019-02-12 11:09:21 · 732 阅读 · 2 评论 -
算法训练 最小乘积(基本型)(java)
问题描述给两组数,各n个。 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小。要求程序输出这个最小值。 例如两组数分别为:1 3 -5和-2 4 1那么对应乘积取和的最小值应为: (-5) * 4 + 3 * (-2) + 1 * 1 = -25输入格式第一个行一个数T表示数据组数。后面每组数据,先读入一个n,接下来两行每行n个数,每个数的绝对值小于...原创 2019-02-11 12:06:50 · 423 阅读 · 0 评论 -
算法训练 区间k大数查询(java)
问题描述给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。输入格式第一行包含一个数n,表示序列长度。第二行包含n个正整数,表示给定的序列。第三个包含一个正整数m,表示询问个数。接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。输出格式总共输出m行,每行一个数,表示询问的答案。样例输入 5...原创 2019-02-11 11:44:41 · 1197 阅读 · 0 评论 -
算法训练 Torry的困惑(基本型)(java)
问题描述Torry从小喜爱数学。一天,老师告诉他,像2、3、5、7……这样的数叫做质数。Torry突然想到一个问题,前10、100、1000、10000……个质数的乘积是多少呢?他把这个问题告诉老师。老师愣住了,一时回答不出来。于是Torry求助于会编程的你,请你算出前n个质数的乘积。不过,考虑到你才接触编程不久,Torry只要你算出这个数模上50000的值。输入格式 仅包含一个正整数n,...原创 2019-02-09 14:22:18 · 902 阅读 · 0 评论 -
算法训练 删除数组零元素(java)
题目描述从键盘读入n个整数放入数组中,编写函数CompactIntegers,删除数组中所有值为0的元素,其后元素向数组首端移动。注意,CompactIntegers函数需要接受数组及其元素个数作为参数,函数返回值应为删除操作执行后数组的新元素个数。输出删除后数组中元素的个数并依次输出数组元素。样例输入: (输入格式说明:5为输入数据的个数,3 4 0 0 2 是以空格隔开的5个整数)53...原创 2019-02-06 12:03:53 · 716 阅读 · 0 评论 -
算法训练 大小写转换(java)
问题描述编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小写,小写字母变成大写,然后把这个新的字符串输出。 输入格式:输入一个字符串,而且这个字符串当中只包含英文字母,不包含其他类型的字符,也没有空格。 输出格式:输出经过转换后的字符串。输入输出样例样例输入AeDb样例输出aEdB本题思路本题主要考察对字符数的大...原创 2019-02-06 10:54:32 · 1274 阅读 · 1 评论 -
算法训练 出现次数最多的整数(java)
问题描述编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。 输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列。 输出格式:输出只...原创 2019-02-05 11:11:54 · 1439 阅读 · 4 评论 -
算法训练 Anagrams问题
问题描述Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”和“MinOR”都是Anagrams。编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams。每一个单词的长度不会超过80个字符,而且是大小写无关的。 输入格式:输入有两行,分别...原创 2019-02-04 12:46:46 · 529 阅读 · 2 评论 -
算法训练 前缀表达式(java)
问题描述编写一个程序,以字符串方式输入一个前缀表达式,然后计算它的值。输入格式为:“运算符 对象1 对象2”,其中,运算符为“+”(加法)、“-”(减法)、“*”(乘法)或“/”(除法),运算对象为不超过10的整数,它们之间用一个空格隔开。要求:对于加、减、乘、除这四种运算,分别设计相应的函数来实现。 输入格式:输入只有一行,即一个前缀表达式字符串。 输出格式:输出相应的...原创 2019-02-04 10:39:56 · 519 阅读 · 0 评论 -
算法训练 6-1 递归求二项式系数值(java)
- 问题描述- 样例输入 一个满足题目要求的输入范例。 3 10- 样例输出与上面的样例输入对应的输出。- 数据规模和约定输入数据中每一个数的范围。 例:结果在int表示时不会溢出。- 主要思路本题是一个简单的数学组合排列问题,主要采用递归的方法求系数值,根据题目给出 的分段函数公式我们可以将该问题分成两部分来解决。 - 代码如下:import java.u...原创 2019-02-03 20:42:53 · 431 阅读 · 0 评论 -
奇怪的比赛(java)
问题描述:某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。每位选手都有一个起步的分数为10分。某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答对了,哪个题目答错了吗?如果把答对的记为1,答错的记...原创 2019-03-21 18:33:22 · 1938 阅读 · 2 评论