首页 > 编程语言 >算法专项-基础100题

算法专项-基础100题

时间:2024-08-31 15:37:04浏览次数:10  
标签:专项 题目 sum list range 算法 print input 100

题目1:求和

a,b=map(int,input().split())
print(a+b)

题目2:偶数奇数打印

list=[]
for i in range(1,100):
    if i%2==0:#if%2!=表示奇数
        list.append(i)
for i in list:#list转换为str
    print(i,end=' ')

题目3:偶数奇数求和

sum=0
for i in range(1,100):
    if i%2==0:
        sum+=i
print(sum)

题目4:判断素数

(1)素数就是除了1和本身之外无其他自然数整除;算法核心就是判断该自然数是否能被除1和本身之外的其他数整除

a=int(input())
for i in range(2,a+1):
    if a%i==0:
        print("不是素数")
    else:
        print("是素数")
    break

题目5:求阶乘

#非递归
a=int(input())
sum=1
for i in range(1,a+1):
    sum*=i
print(sum)

题目5:求圆面积和周长

import math
r=int(input())
pi = math.pi
a=pi*r*2
s=pi*r**2
print("面积:%.2f"%a)
print("周长:%.2f"%s)

题目6:求三角斜边长

import math
a,b=map(int,input().split())
c=math.sqrt(a**2+b**2)
print(int(c))

题目7:排序

a,b,c=map(int,input().split())
list=[a,b,c]
list1=sorted(list)
for i in list1:
    print(i,end=' ')

题目8:找出区间内素数

(1)区间为[a,b]

def prinme(n):
    flag = True#默认认为为素数
    for i in range(2, n):
        if n % i == 0:
            flag = False
            break
    return flag

a,b = map(int, input().split())
list=[]
for i in range(a,b+1):
    if prinme(i):
        list.append(i)
print(list)

题目9:组合数字

(1)四个数字组合成互不重复的三位数字;就是嵌套三层循环分别表示不同的位置;然后进行排列组合

for i in range(1,5):
    for j in range(1,5):
        for m in range(1,5):
            if i!=j and i!=m and j!=m:
                print(i,j,m)

题目10:"99乘法表"

(1)核心就是根据乘法表的特性进行编写(第一行有1列;第二行有2列;以此类推)

for i in range(1,10):
    print()
    for j in range(i):
        print(f"{i}*{j}={i*j}",end=" ")

题目11:水仙花数

(1)水仙花数是一个三位数;各位数立方之和等于该数本身

for i in range(100, 1000):
    a = i % 10          # 获取个位数字
    b = (i % 100) // 10 # 获取十位数字
    c = i // 100        # 获取百位数字
    if a*a*a + b*b*b + c*c*c == i:
        print(f"水仙花数:{i}")

题目12:反向输出四位数

a,b,c,d = map(int,input().split())
list=[a,b,c,d]
list1=list[::-1]
for i in list1:
    print(i,end=' ')

题目13:输入字符;判断是否为字母

a=input
result=a.isalpha()
if result:
    print("是字母")
else:
    print("不是字母")

题目14:判断三角形

a<=0 or b<=0 or c<=0 #数据不合法
a+b>c and a+c>b and b+c>a #满足条件

题目15:判断完数

(1)特征:这个数恰好等于除了它之外的因子之和

for i in range(1,1000):#1000以内的数
    sum=0
    for j in range(1,i):#除了它之外的因子
        if i%j==0:
            sum+=j
    if sum==i:
        print(i)

题目16:海伦公式

a,b,c = map(int,input().split())
p=(a+b+c)/2
s=((p*(p-a)*(p-b)*(p-c))**0.5)
print(s)
#或者使用math.sqrt代替**0.5

题目17:判断某年某天

import datetime
year, month, day = map(int, input("请输入日期(格式:YYYY-MM-DD): ").split('-'))
yuandan =datetime.datetime(year, 1, 1)
now = datetime.datetime(year,month,day)
days = (now - yuandan).days
print("距离元旦还有{}天".format(days))

题目18:斐波那切数列

(1)[1,1,2,3,5,8,13....]

list=[1,1]
for i in range(1,10):
    list.append(list[-1]+list[-2])
print(list)

题目19:列表复制

(1)将一个列表的数据复制到另一个列表当中

#直接复制法-浅复制
#深复制
import copy
list=[1,2,3,4]
list1=copy.copy[list]

题目20:暂停后输出

import time
time.sleep(5)#程序休眠5秒
print("gsupl")

题目21:成绩if语句

score=int(input("请输入成绩"))
if score>=90:
    print("A")
elif 60<=score<90:
    print("B")
else:
	print("C")

题目22:统计字符

string=input("请输入字符串")
char=0
number=0
space=0
other=0
for i in string:
    if i.isalpha():
        char+=1
    elif i.isdigit():
        number+=1
    elif i.isspace():
        space+=1
    else:
        other+=1
print(f"{char}{space}{number}{other}")

题目23:落体反弹问题

n=100#初始高度
count=0#计数器
list=[]#存放高度的列表
while count<10:
    if count==0:
        list.append(n)
        count+=1
        continue
    else:
        n=n/2
        list.append(n)
        count+=1

print(list)#输出高度的列表

题目24:猴子吃桃问题

(1)猴子第一天摘了若干个桃子;第一天吃了一半+1;以此类推;到第10天早上剩一个桃子了!

#逆推过程成就是当前的桃子+1乘2
sum=1#初始桃子的数量
for i in range(1,10):#表示1-9天的天数
    total=(sum+1)*2
    sum=total
print(sum)

题目25:指定数列的和

(1)1/2 3/2 5/3 8/5 13/8 21/13;求前20项的和;分子分母分开进行计算

sum=0
up=2
down=1
for i in range(20):
    sum+=up/down
    t=down
    down=up
    up=up+t
print(sum)

题目26:求乘阶和

(1)1!+2!+3!+...+20!的和

import math
sum=0
for i in range(1,21):
    sum+=math.factorial(i)
print(sum)

题目27:年龄急转弯

#递归函数
def func(n):
    if n==1:
        return 10
    else:
        return func(n-1)+2

print(func(5))

题目28:判断回文数

(1)特征:正序和反序相同

a=input("请输入字符串:")
a=str(a)
b=a[::-1]
if a==b:
    print("是回文串")
else:
    print("不是回文串")

题目29:判断星期几

#简单的循环判断

题目30:相反列表输出

#方法1;使用reverse()方法-->list.reverse()
#方法2:使用切片进行反转-->list1=list[::-1]

陆续更新

标签:专项,题目,sum,list,range,算法,print,input,100
From: https://www.cnblogs.com/gsupl/p/18390375

相关文章

  • 分水岭算法简介
    分水岭算法是一种经典的图像分割技术,广泛应用于图像处理领域。它的名称源自地理学中的“分水岭”概念,即在地形中,水从高处流向低处,最终汇聚成河流的过程。在图像分割中,分水岭算法将灰度图像视为地形,将像素值看作海拔高度。该算法模拟水从各个局部最小值(即山谷)向外扩展,最终在山峰......
  • 【从入门到普及-】P1001 A+B Problem
    上一篇居然这么受欢迎!所以今天更下一篇啦!(读者:那么我觉得这件事实在是,泰库辣)介绍没啥好介绍的了,反正这题看似不难,实则非常简单。(读者:so?)#A+BProblem题目背景强烈推荐[新用户必读帖](/discuss/show/241461)。**不熟悉算法竞赛的选手请看这里:**算法竞赛中要求的输出格式......
  • 15.标准库算法
    15.标准库算法15.1引言无事可记15.2最低迭代器要求(MinimumIteratorRequirements)容器的一个重要的部分就是它所支持的迭代器类型。这决定了容器可以使用哪种算法。例如,vector和array都支持random-accessiterators。所有的标准库算法都可以用于vector,不改变容器大小的算......
  • 求阴影面积【简便算法】
    如图所示,长方形ABCD的面积为20平方厘米,S△ABE=4平方厘米,S△AFD=6平方厘米,三角形AEF的面积是多少平方厘米 (?)A 7.2B 7.6    【正确答案】C 8.4D 8.8首先拿到这道题以后,先大致的看一遍,发现这个题目的描述很简短,几何图形也很简单,所以一定是有简便算法的,不需要设什么变量,考试......
  • 一种基于YOLOv10的高精度光伏板缺陷检测算法(原创自研),适用缺陷检测场景、小缺陷场景
     ......
  • 经典跟踪算法总结
    https://github.com/mikel-brostrom/boxmotSORT SORT是一种多目标跟踪算法,可以有效地关联目标,并提升跟踪的实时性。SORT的核心主要是卡尔曼滤波和匈牙利算法的结合,可以达到较好的跟踪效果。在当时,跟踪速度达到了260HZ,相比其他方法速度提升了20倍。SORT关注的重点是实时跟踪......
  • 【机器学习】sklearn核心分类算法比较
    sklearn核心分类算法比较sklearn分类问题的核心算法及其关联核心分类算法其他分类算法算法之间的关联示例代码运行结果sklearn分类问题的核心算法及其关联在scikit-learn中,分类问题是机器学习中最常见的任务之一。scikit-learn提供了多种分类算......
  • 【PSO-BP】基于粒子群算法优化BP神经网络的风电功率预测研究(Matlab代码实现)
            ......
  • 亦菲喊你来学机器学习(16) --K-means聚类算法
    文章目录K-means基本步骤优缺点构建模型总结K-meansK-means算法是一种广泛使用的聚类算法,旨在将数据集划分为K个簇,使得每个簇内的数据点尽可能相似,而不同簇之间的数据点尽可能不同。这个算法通过迭代的方式实现,每次迭代都会更新簇的中心(即簇内所有点的均值),然后将......
  • 【电力系统短期负荷预测】基于ELM、白鲸算法优化ELM、鹭鹰算法优化ELM极限学习机的电
       ......