《常用算法(带答案).docx》由会员分享,可在线阅读,更多相关《常用算法(带答案).docx(16页珍藏版)》请在优知文库上搜索。
1、1 .累加输入一个整数n,求l+2+3+.+n的和。输入:一个整数输出:一个整数样例输入:10样例输出:55测试输入:4测试输出:10n=int(input()S=Oforiinrange(n+l):s+=iprint(s)2 .累乘输入一个整数n,求l*2*3+.*n的积。输入:一个整数输出:一个整数样例输入:5样例输出:120测试输入:10测试输出:3628800n=int(input()t=lforiinrange(lzn+l):t*=iprint(t)3 .计数输入一个整数n,统计ln范围内能同时被3和7整数的数有几个?输入:一个整数输出:一个整数样例输入:100样例输出:4测试输入:
2、200测试输出:9n=int(input()js=0foriinrange(n+l):ifi%3=0andi%7=0:js+=lprint(js)4.最大值最小值输入一行整数,求这些整数中的最大值和最小值及其位置。输入:一行整数输出:最大值及其位置和最小值及其位置样例输入:346109样例输出:最大值10,位置在第4个,最小值3,位置在第1个!测试输入:10203040750测试输出:最大值50,位置在第6个,最小值7,位置在第5个!a=list(m叩(int,input().split()zd=aO;zx=aO;zdindex=O;zxindex=Oforiinrange(ljen(a):i
3、faizd:zd=aizdindex=iifaiord(z):n=n-26s=s+chr(n)print(s)14 .最大公约数、最小公倍数输入两个整数m和n,请使用辗转相除法输出m和n的最大公约数和最小公倍数。输入:两个整数m和n输出:每次循环的过程(每项占5歹Q和最大公约数及最小公倍数样例输入:128样例输出:mnr1284840最大公约数:4最小公倍数:24测试输入:208测试输出:mnr2084840最大公约数:4最小公倍数:40m,n=map(int,input().split()print(,:5sr5s5s.format(,m,n7r)mn=m*nWhiIeTrue:r=m%np
4、rint(5d5d5d,.format(mznjr)ifr=0:breakm,n=nzrPrintr最大公约数:%d,%n)Printc最小公倍数:%d%(mnn)15 .选择法排序输入一个整数的列表,请用选择法对列表进行从小到大的排序。输入:一个整数的列表输出:每次循环的过程及结果样例输入:5,3,8,7,2样例输出:第1轮交换后:2,3,8,7,5第2轮交换后:2,3,8,7,5第3轮交换后:2,3,5,7,8第4轮交换后:2,3,5,7,8最后结果为:2,3,5,7,8测试输入:10,503,7测试输出:第1轮交换后:3,50,10,7第2轮交换后:3,7,10,50第3轮交换后:7,1
5、0,50最后结果为:3,1,10,50a=eval(input()foriinrange(len(a)-l):P=iforjinrange(i+ljen(a):ifajaj+l:aOLaO+l=aj+lUPrint(第轮交换后:.format(i+l,a)Print(最后结果为:,,a)17 .插入排序输入一个整数的列表,请用插入排序方法对列表进行从小到大的排序。输入:一个整数的列表输出:每次循环的过程及结果样例输入:5,3,8,7,2样例输出:第1轮交换后:3,5,8,7,2第2轮交换后:5,8,7,2第3轮交换后:5,7,8,2第4轮交换后:2,3,5,7,8最后结果为:2,3,5,7,8测试输入:10,50,3,7测试输出:第1轮交换后:10,50,3,7第2轮交换后:10,50,7第3轮交换后:7,10,50最后结果为:3,7,10,50a=eval(input()foriinrange(ljen(a):forjinrange(i,0,-l):ifajaj-l:ajLaU-l=aj-l,ajPrint(第轮交换后:.format。,a)Printe最