循环结构(习题精选)

点击题目后链接可以查看题解

文章目录


1、整数序列的元素最大跨度值YZOJ-1063

【问题描述】
给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。

【输入格式】
一共2行,第一行为序列的个数n ( 1 ≤ n ≤ 1000 ) n(1 \leq n \leq 1000)n(1≤n≤1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。

【输出格式】
输出一行,表示序列的最大跨度值。

【样例输入】
6
3 0 8 7 5 9
1
2
【样例输出】
9

2、满足条件的数累加YZOJ-1066

【问题描述】
将正整数 m 和 n 之间(包括 m 和 n)能被 17 整除的数累加。其中,0 < m < n < 1000。

【输入格式】
一行,包含两个整数m和n,其间以一个空格间隔。

【输出格式】
输出一行,包行一个整数,表示累加的结果。

【样例输入】
50 85
1
【样例输出】
204

3、数字反转YZOJ-1083

【问题描述】
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。

【输入格式】
输入共 1 行,一个整数N NN。
− 1 , 000 , 000 , 000 ≤ N ≤ 1 , 000 , 000 , 000 -1,000,000,000 \leq N\leq 1,000,000,000−1,000,000,000≤N≤1,000,000,000。

【输出格式】
输出共 1 行,一个整数,表示反转后的新数。

【样例输入1】
123
1
【样例输出1】
321
1
【样例输入2】
-380
1
【样例输出2】
-83

4、奇数求和YZOJ-1065

【问题描述】
计算非负整数m mm到n nn(包括m和n)之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如 m=3, n=12, 其和则为:3+5+7+9+11=35。
【输入格式】
两个数 m 和 n,两个数以一个空格分开,其中0 ≤ m ≤ n ≤ 300 0\leq m \leq n \leq 3000≤m≤n≤300 。
【输出格式】
输出一行,包含一个整数,表示m 到 n(包括m和n)之间的所有奇数的和
【样例输入】
7 15
1
【样例输出】
55

5、定义新运算YZOJ-1062

【问题描述】
现有两个整数,对他们做特殊运算,例如:123和45,对他们运算处理如下:
1*4+1*5+2*4+2*5+3*4+3*5=54

【输入格式】
两个正整数,数在int范围内。

【输出格式】
一个正整数。

【样例输入1】
123 45
1
【样例输出1】
54
1
【样例输入2】
1234 56789
1
【样例输出2】
350

6、求阶乘的和YZOJ-1087

【问题描述】
给定正整数n,求不大于n的正整数的阶乘的和(即求1!+2!+3!+…+n!)

【输入格式】
输入有一行,包含一个正整数n(1 < n < 12)。

【输出格式】
输出有一行:阶乘的和。

【样例输入】
5
1
【样例输出】
153

7、角谷猜想YZOJ-1075

【问题描述】
所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。
程序要求输入一个整数,将经过处理得到1的过程输出来。

【输入格式】
一个正整数N ( N ≤ 2 , 000 , 000 ) N(N \leq 2,000,000)N(N≤2,000,000)

【输出格式】
从输入整数到1的步骤,每一步为一行,每一部中描述计算过程。最后一行输出"End"。如果输入为1,直接输出"End"。

【样例输入】
5
1
【样例输出】
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
End

8、哥德巴赫猜想YZOJ-1097

【问题描述】
哥德巴赫猜想:任一个大于等于6的偶数总可以拆分为两个素数之和。现输入一个大于等于6的偶数n, 输出有多少种不同的拆分方案。

【输入格式】
一行一个正整数 n ( 6 ≤ n ≤ 100000 , n 为 偶 数 ) n(6 \leq n \leq 100000,n为偶数) n(6≤n≤100000,n为偶数)

【输出格式】
拆分的方案数。

【样例输入】
10
1
【样例输出】
2
1
【样例说明】
10=3+7
10=5+5
10=3+7和10=7+3认为是同一种拆分方案。

9、开关灯YZOJ-1085

【问题描述】
假设有N盏灯(N为正整数,≤ 5000 \leq 5000≤5000),从1到N按顺序依次编号,初始时全部处于开启状态;有M个人(M为不大于N的正整数)也从1到M依次编号。
第一个人(1号)将灯全部关闭,第二个人(2号)将编号为2的倍数的灯打开,第三个人(3号)将编号为3的倍数的灯做相反处理(即,将打开的灯关闭,将关闭的灯打开)。依照编号递增顺序,以后的人都和3号一样,将凡是自己编号倍数的灯做相反处理。
请问:当第M个人操作之后,哪几盏灯是关闭的,按从小到大输出其编号,其间用逗号间隔。

【输入格式】
输入正整数N和M,以单个空格隔开。

【输出格式】
顺次输出关闭的灯的编号,其间用逗号间隔。

【样例输入】
10 10
1
【样例输出】
1,4,9

上一篇:$ git config credential.helper store


下一篇:LockSettingsService的setLockCredentialInternal函数详解