洛谷刷题记录(python)【入门6】函数与结构体

本文记录了在洛谷平台上使用Python进行编程学习的过程,涉及了函数的运用和数据结构的理解。包括质数筛、距离函数、闰年判断等基础题目,以及一些进阶问题如最厉害的学生、回文质数等,通过实例深入浅出地介绍了Python在算法题目中的应用。
摘要由CSDN通过智能技术生成

【入门6】函数与结构体icon-default.png?t=M0H8https://www.luogu.com.cn/training/105#problems

P5735 【深基7.例1】距离函数

import math


def solve(a, b, c, d):
    dis = 0.0
    dis = (a - c) * (a - c) + (b - d) * (b - d)
    dis = math.sqrt(dis)
    return dis

x1, y1 = map(float, input().split())
x2, y2 = map(float, input().split())
x3, y3 = map(float, input().split())

C = solve(x1, y1, x2, y2) + solve(x1, y1, x3, y3) + solve(x2, y2, x3, y3)
print("%.2f"%C)

P5736 【深基7.例2】质数筛

import math

def check(x):
    if x < 2:
        return False
    t = int(math.floor(math.sqrt(x)))
    for i in range(2, t+1):
        if x % i == 0:
            return False
    return True

n = int(input())
a = [int(i) for i in input().split()]
b = []

for i in range(n):
    if check(a[i]):
        b.append(a[i])
for i in range(len(b)-1):
    print(b[i], end=' ')
print(b[len(b)-1])

P5737 【深基7.例3】闰年展示

import sys

x, y = map(int, input().split())

def check(n):
    if n % 4 == 0:
        if n % 100 == 0 and n % 400 != 0:
            return False
        else:
            return True
    else:
        return False

a = []
for i in range(x, y+1):
    if check(i):
        a.append(i)
cnt = len(a)
print(cnt)
if cnt > 0:
    for i in range(cnt - 1):
        print(a[i], end=' ')
    print(a[cnt - 1])
else:
    sys.exit(0)

P5738 【深基7.例4】歌唱比赛

n, m = map(int, input().split())

ans = []

for i in range(n):
    a = [int(i) for i in input().split()]
    a.sort()
    la = len(a)
    sum = 0
    for i in range(1, la-1):
        sum += a[i]
    k = sum / (la - 2)
    ans.append(k)
ans.sort()
print("%.2f"%ans[n-1])

P5739 【深基7.例7】计算阶乘

n  = int(input())

def dfs(x):
    if x == 1:
        return x
    return x * dfs(x-1)
print(dfs(n))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值