7-1 冒泡法排序
将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一个元素必定是最大的元素。然后用同样的方法对前N−1个元素进行第二遍扫描。依此类推,最后只需处理两个元素,就完成了对N个数的排序。
本题要求对任意给定的K( 输入在第1行中给出N和K(1≤K 在一行中输出冒泡排序法扫描完第K遍后的中间结果数列,数字间以空格分隔,但末尾不得有多余空格。 7-2 评委打分. 班级里要搞智力竞赛啦!同学们都踊跃参加。进入最后决赛的是10个同学,随着一道道题目的出示,有时是1号选手得分,有时是5号选手得分,每次答对者得10分,最后结果如何呢? 第一行有十个整数,表示十位同学的初始分。第二行一个整数n,表示有n道题竞赛。 10个同学最终的得分值,每两位同学之间有一个空格。 7-3 组合数的和 给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。 输入在一行中先给出 N(1 < N < 10),随后一行给出 N 个不同的非 0 个位数字。数字间以空格分隔。 输出所有可能组合出来的2位数字的和。 7-4 找不同 这是一个签到题,非常简单。一群网友在网上在玩游戏,看谁是最与众不同的,每一个人都单独写一个数字,然后依次上交,谁的数据没有和其他人重复,谁就赢了,如果有很多人都与众不同,那么第一个做到的才是真正的与众不同。 输入是一个测试用例,首先给出网友个数N,之后依次给出N个正整数,给出的正整数和N都不超过10的5次方。 对每一组输入,输出与众不同的那个数,如果没有,输出 在这里给出一组输入。例如: 在这里给出相应的输出。例如: 在这里给出一组输入。例如: 在这里给出相应的输出。例如: 利用二分法在一个有N(N≤20)个元素的有序数列中查找指定值y。找到y后,先输出查找次数,再输出其在数组中对应的下标。若数列中存在多个y,将所有y的位置按下标序号顺序输出; 输入在第1行中给出1个不大于20的数N。在第2行给出N个数(升序),以空格分隔。最后在第3行给出待查找数据y。 若数列中存在y:先输出查询次数,在其后每行以格式“位置:k”,输出一个位置值。 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。 每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。 本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、⋯、n−1列变换为第n−m、n−m+1、⋯、n−1、0、1、⋯、n−m−1列。 输入第一行给出两个正整数m和n(1≤n≤6)。接下来一共n行,每行n个整数,表示一个n阶的方阵。 按照输入格式输出移动后的方阵:即输出n行,每行n个整数,每个整数后输出一个空格。 7-8 TicTacToe游戏--胜负判定 井字棋是一种在3x3格子上进行的连珠游戏,和五子棋比较类似,由于棋盘一般不画边框,格线排成井字故得名。 游戏规则:由分别代表O和X的两个游戏者轮流在格子里留下标记。由最先在任意一条直线上成功连接三个标记的一方获胜。(摘抄自百度百科) 读入一个3X3的二维数组,数组元素为'X'表示下X,元素为'O'表示下O,数组元素为'.'(英文符号“点”)表示未下棋,现编写程序进行当前胜负的判断,如果X方胜,则显示"X win!",如果O方胜,则显示"O win!",如果无人获胜,则显示"No one win!"。 读入一个3X3的二维数组,数组元素为'X'表示下X,元素为'O'表示下O,数组元素为'.'(英文符号“点”)表示未下棋。 若X方胜,则显示"X win!";若O方胜,则显示"O win!";若无人获胜,则显示"No one win!"。 7-9 2048游戏模拟(2)--向下移位合并 本题模拟2048游戏的规则,提供4X4个格子,输入每个格子的初始值(空白格子值为0),玩家选择向下移动,所有数字向下靠拢,相同的数字相撞时会合并。移动结束后,输出合并后的数值。 分4行,每行输入4个整数,分别表示格子中的初值,数据之间用空格分隔。 分4行,输出移动合并后的数据,每个数之间有一个空格,行末无空格。 输入1个无符号二进制数串,编写程序将其转换成对应的十进制数,并输出。 输入1个二进制数串(至少1位且不超过16位)。 输出转换后的十进制数。 7-11 英文单词排序 本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。 输入为若干英文单词,每行一个,以 输出为排序后的结果,每个单词后面都额外输出一个空格。 本题目要求编写程序,输入一行字符,统计每个单词的长度。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。 输入给出一行字符。 在一行中输出每个单词的长度。每个数字后有一个空格。 7-13 来验证我们的身份证吧 咱们的身份证号码由18位字符组成,其中17位为地区、日期编号和顺序编号,最后1位为校验码。 校验码的计算规则如下: Z: 0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 例如:对于身份证号420111200001014148,按权重累加和S为: 4×7+2×9+0×10+1×5+......+4×8+1×4+4×2=125 由此计算 Z=S % 11=4 对应的M值为 8 ,即校验位值为8,与输入的身份证号最后一位相同,故上述身份证号正确。若M值与身份证最后一位不同,则身份证号有问题。 本题给出一些身份证号码,请你验证校验码是否正确。若身份证号有问题,则输出该号码。 第1行输入需判断的身份证号码条数N(0 每行输出一条不正确的身份证号。 若全部正确,输出"全部正确!"。 7-14 将整数按三位分节 编写一个程序,将某个位数不确定的非负整数进行三位分节后输出。程序保证数据是不超过4个字节的正整数。 输入一个非负整数,以回车结束输入。 将这个正整数每隔3位就用逗号分隔,然后输出。 刚进入2020年,网上就流传着2020.02.02是“千年一遇”的对称日(正着读反着读都一样),很多情侣准备选择这一天去登记结婚。事实上,像这样的完全对称日还有很多。 输入2个年份M、N(1000<=M<=N<=9999)。 按“年.月.日”的格式输出该年所有的完全对称日。其中年按4位输出,月、日均按2位输出,位数不足则加前导0。每行输出一个完全对称日。输入格式:
输出格式:
输入样例:
6 2
2 3 5 1 6 4
输出样例:
2 1 3 4 5 6
代码段:
#include
输入格式:
接下去有n行,每行有一个数字x,x表示本次可以加分的选手序号(每次答对者得10分)。输出格式:
输入样例:
10 0 0 0 10 10 0 0 0 10
3
1
10
1
输出样例:
30 0 0 0 10 10 0 0 0 20
代码段:
#include
输入格式:
输出格式:
输入样例:
3
2 8 5
输出样例:
330
代码段:
#include
输入格式:
输出格式:
None
。输入样例1:
8 1 2 3 4 4 5 3 1
输出样例1:
2
输入样例2:
8 1 2 3 4 4 3 2 1
输出样例2:
None
代码段:
#include
7-5 利用二分查找搜寻所有待查找数据
否则输出“not found”.输入格式:
输出格式:
若数列中没有y:输出“not found”。输入样例 1:
10
34 56 78 87 87 87 87 112 520 888
87
输出样例 1:
查找次数1
位置:3
位置:4
位置:5
位置:6
输入样例 2:
10
34 56 78 87 87 87 87 112 520 888
80
输出样例 2:
not found
代码段:
#include
7-6 判断上三角矩阵
输入格式:
输出格式:
输入样例:
3
3
1 2 3
0 4 5
0 0 6
2
1 0
-8 2
3
1 2 3
1 4 5
0 -1 6
输出样例:
YES
NO
NO
代码段:
#include
7-7 方阵循环右移
输入格式:
输出格式:
输入样例:
2 3
1 2 3
4 5 6
7 8 9
输出样例:
2 3 1
5 6 4
8 9 7
代码段:
#include
输入格式:
输出格式:
输入样例1:
X.O
OX.
O.X
输出样例2:
X win!
输入样例2:
O.O
XX.
X..
输出样例2:
No one win!
代码段:
#include
输入格式:
输出格式:
输入样例:
2 0 2 2
2 2 4 4
0 2 0 2
4 0 0 4
输出样例:
0 0 0 2
0 0 0 4
4 0 2 2
4 4 4 4
代码段:
#include
7-10 二进制数据转换成十进制数
输入格式:
输出格式:
输入样例:
0110110001100
输出样例:
3468
代码段:
#include
输入格式:
#
作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。输出格式:
输入样例:
blue
red
yellow
green
purple
#
输出样例:
red blue green yellow purple
代码段:
#include
7-12 统计单词的长度
输入格式:
输出格式:
输入样例:
How are you?
输出样例:
3 3 4
代码段:
#include
输入格式:
输出格式:
输入样例 1:
3
420106197107251007
310111196602231020
602402200311154723
输出样例 1:
全部正确!
输入样例 2:
2
42010619710725100X
220111196302231027
输出样例 2:
42010619710725100X
代码段:
#include
输入格式:
输出格式:
输入样例:
1234567
输出样例:
1,234,567
代码段:
#include
7-15 求完全对称日
现在来编写一个程序,输入2个年份M、N(1000<=M<=N<=9999),输出M和N之间(包含M、N)的所有完全对称日。如果没有完全对称日,则输出"None"。输入格式:
输出格式:
输入样例:
2011 2020
输出样例:
2011.11.02
2020.02.02
代码段:
#include