python_蓝桥杯刷题记录_笔记_全AC代码_入门4

题单目录

1.P1914 小书童——凯撒密码

2.P1028 [NOIP2001 普及组] 数的计算

3.P1036 [NOIP2002 普及组] 选数

4.P1149 [NOIP2008 提高组] 火柴棒等式

5.P1217 [USACO1.5] 回文质数 Prime Palindromes

6.P1478 陶陶摘苹果(升级版)

7.P1618 三连击(升级版)


1.P1914 小书童——凯撒密码

n = int(input())
str = input()
for i in range(len(str)):
    asc = ord(str[i]) + n
    if asc > ord('z'):
        asc = asc - ord('z') + ord('a')-1
    temp = chr(asc)
    print(f'{temp}',end='')

2.P1028 [NOIP2001 普及组] 数的计算

h = [0] * 10001
n = int(input())
for i in range(1, n + 1):
    h[i] = 1
    for j in range(1, i // 2 + 1):
        h[i] += h[j]
print(h[n])

3.P1036 [NOIP2002 普及组] 选数

import math
ans = 0
def isPrime(sum):
    if sum<2:
        return False
    for i in range(2,int(math.sqrt(sum))+1):
        if sum%i == 0:
            return False
    return True
def dfs(num,i,sum):
    global ans,l
    if num == k:
        if isPrime(sum):
            ans += 1
        return
    for j in range(i,n):
        dfs(num+1,j+1,sum+l[j])
    return

n,k = map(int,input().split(' '))
l = list(map(int,input().split(' ')))

dfs(0,0,0)
print(ans)

4.P1149 [NOIP2008 提高组] 火柴棒等式

 感觉没有写错,但是提交上去会显示超时,怎么改?????????

l = [6, 2, 5, 5, 4, 5, 6, 3, 7, 6]
n = int(input())
n -= 4
ans = 0
flag = 0
def f(num):
    global ans
    if num == 0:
        return 6
    while num != 0:
        ans += l[num%10]
        num //= 10
    return ans

for i in range(1111):
    for j in range(1111):
        num = f(i)+f(j)+f(i+j)
        if num == n:
            flag += 1
print(flag)

5.P1217 [USACO1.5] 回文质数 Prime Palindromes

 还是遇到很大的数字之后就又超时了,怎么解决呀?????

import math
a,b = map(int,input().split(' '))
def isPrime(n):
    if n<2:
        return False
    for i in range(2,int(math.sqrt(n))+1):
        if n%i == 0:
            return False
    return True

def isPalindromes(n):
    k = 0
    mark = n
    while mark != 0:
        m = mark % 10
        mark //= 10
        k = k*10 + m
    if k == n:
        return True
    return False
for i in range(a,b+1):
    if isPrime(i) and isPalindromes(i):
        print(i)

6.P1478 陶陶摘苹果(升级版)

sort 与 sorted 区别:

  1. sort 是应用在 list 上的方法,属于列表的成员方法,sorted 可以对所有可迭代的对象进行排序操作。
  2. list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
  3. sort使用方法为ls.sort(),而sorted使用方法为sorted(ls)

这道题主要在于要自己定义排序的规则

import functools

n, s = map(int,input().split(' '))
a, b = map(int,input().split(' '))
h = a + b

ans = 0
l = []
for i in range(n):
    temp = list(map(int,input().split(' ')))
    l.append(temp)

def my_cmp(x,y):
    if x[1]>y[1]:
        return 1
    else:
        return -1

l.sort(key=functools.cmp_to_key(my_cmp))
for k in l:
    if k[0]<=h and s>=k[1]:
        s -= k[1]
        ans += 1
    if s < k[1]:
        break
print(ans)

7.P1618 三连击(升级版)

太不容易了,一开始的做法是跟普通三连击的那个做法来的,结果就是有几个测试点一直都不能通过,然后我就再去思考了其他解法。

突然想到可以用字符串结合集合的做法去完成,很显然方便了很多,就是需要不断地去测试找到一些特殊情况,可算是找到了,最终全部通过了AC。

a, b, c = map(int,input().split(' '))
flag = 1
if a == 0 or b == 0 or c == 0:
    flag = 1
else:
    for i in range(1,334):
        num1 = i * a
        num2 = i * b
        num3 = i * c
        num11 = str(num1)
        num22 = str(num2)
        num33 = str(num3)
        if len(num11)==3 and len(num22)==3 and len(num33)==3:
            str_all = num11+num22+num33
            str_set = set(str_all)
            if len(str_set) == 9 and '0' not in str_set:
                print(f'{num1} {num2} {num3}')
                flag = 0
if flag:
    print('No!!!')

8.总结

继续加油!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/379553.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

移动端设置position: fixed;固定定位,底部出现一条缝隙,不知原因,欢迎探讨!!!

1、问题 在父盒子中有一个子盒子&#xff0c;父盒子加了固定定位&#xff0c;需要子盒子上下都有要边距&#xff0c;用margin或者padding挤开时&#xff0c;会出现缝隙是子盒子背景颜色的。 测试过了&#xff0c;有些手机型号有&#xff0c;有些没有&#xff0c;微信小程序同移…

数字图像处理实验记录六(图像的傅里叶变换和频域处理)

前言&#xff1a; 一、基础知识 1&#xff0c;傅里叶变换是什么 傅里叶变换是一种线性积分变换&#xff0c;通俗来说&#xff0c;通过傅里叶变换就是把一段信号分解成若干个简谐波。 二、实验要求 1&#xff0e;产生一幅如图所示亮块图像f(x,y)&#xff08;256256 大小、…

[UI5 常用控件] 08.Wizard,NavContainer

文章目录 前言1. Wizard1.1 基本结构1.2 属性1.2.1 Wizard&#xff1a;complete1.2.2 Wizard&#xff1a;finishButtonText1.2.3 Wizard&#xff1a;currentStep1.2.4 Wizard&#xff1a;backgroundDesign1.2.5 Wizard&#xff1a;enableBranching1.2.6 WizardStep&#xff1a;…

[红日靶机渗透] ATKCK红队评估实战靶场三

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【ATK&CK红队评估实战靶场】 【VulnHub靶场复现】【面试分析】 &#x1f…

Ubuntu22.04 gnome-builder gnome C 应用程序习练笔记(一)

一、序言 gnome-builder构建器是gnome程序开发的集成环境&#xff0c;支持主力语言C, C, Vala, jscript, python等&#xff0c;界面以最新的 gtk 4.12 为主力&#xff0c;将其下版本的gtk直接压入了depreciated&#xff0c;但gtk4.12与普遍使用的gtk3有很大区别&#xff0c;原…

【C++】引用与内联

个人主页 &#xff1a; zxctsclrjjjcph 文章封面来自&#xff1a;艺术家–贤海林 如有转载请先通知 文章目录 1. 前言2. 引用2.1 引用概念2.2 引用使用场景2.3 引用特性2.4 引用和指针的区别2.5 传值、传引用效率比较2.5.1 值和引用的作为返回值类型的性能比较 3. 内联函数3.1 …

Vue事件中如何使用 event 对象

在Vue中&#xff0c;事件处理函数常常需要获取事件触发时的相关信息&#xff0c;比如鼠标位置、按键信息等。而要获取这些信息&#xff0c;就需要使用event对象。那么在Vue的事件中如何正确使用event对象呢&#xff1f;接下来就来详细介绍一下。 首先&#xff0c;在Vue的事件中…

JUC-并发面试题

一、基础 1、为什么要并发编程 充分利用多核CPU的资源2、并发编程存在的问题 上下文切换:PU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。任务从保…

国考试题答案?五个不限次的公众号和软件分享啦! #学习方法#学习方法

在如今的智能化时代&#xff0c;我们的生活离不开手机&#xff0c;有许多工具能让生活更加方便&#xff0c;那么今天小招就介绍几款&#xff0c;在大学生活中常用的软件&#xff0c;给即将到来的小萌新们 1.灵兔搜题 这个是公众号 题库内容丰富全面&#xff0c;细致分类整理…

PySpark(三)RDD持久化、共享变量、Spark内核制度,Spark Shuffle、Spark执行流程

目录 RDD持久化 RDD 的数据是过程数据 RDD 缓存 RDD CheckPoint 共享变量 广播变量 累加器 Spark 内核调度 DAG DAG 的宽窄依赖和阶段划分 内存迭代计算 Spark是怎么做内存计算的? DAG的作用?Stage阶段划分的作用? Spark为什么比MapReduce快&#xff1f; Spa…

Qt网络编程-TCP与UDP

网络基础 TCP与UDP基础 关于TCP与UDP的基础这里就不过多介绍了&#xff0c;具体可以查看对应百度百科介绍&#xff1a; TCP&#xff08;传输控制协议&#xff09;_百度百科 (baidu.com) UDP_百度百科 (baidu.com) 需要知道这两者的区别&#xff1a; 可靠性&#xff1a; TC…

报道|2024 INFORMS Franz Edelman奖决赛名单

编者按 近日&#xff0c;2024年INFORMS Franz Edelman奖公布了决赛名单。Franz Edelman奖旨在促进能拯救生命、节省金钱以及解决问题的研究。决赛名单包含了零售、航空、食物供应链以及可持续发展等领域的优秀研究。 NFORMS近日发文&#xff0c;公布了进入2024 INFORMS Franz E…

如何在 emacs 上开始使用 Tree-Sitter (archlinux)

文章目录 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 在archlinux上使用比windows上不知道要方便多少倍&#xff01; $ sudo pacman -S emacs $ sudo pacman -S tree-sitter这里…

了解物联网漏洞与家庭网络入侵之间的联系

我们的家庭正日益成为一个由互连设备组成的网络。从智能恒温器到联网冰箱&#xff0c;物联网 (IoT) 彻底改变了我们与家庭环境互动的方式。 随着技术进步带来了新的挑战&#xff1a;这些设备容易受到网络威胁以及随之而来的家庭网络入侵风险。 在这篇博文中&#xff0c;我们将…

Quartus工程的qsf配置约束文件介绍

一、qsf文件概述 qsf&#xff1a;Quartus Setting File&#xff0c;是Quartus工程的配置文件&#xff1b; 包含一个Quartus工程的所有约束&#xff0c;包括工程的软件版本信息、FPGA器件信息、引脚约分配、引脚电平分配&#xff0c;编译约束和用于Classic TimingAnalyzer的时…

Mac电脑如何通过终端隐藏应用程序?

在我们使用Mac电脑的时候难免会遇到想要不想看到某个应用程序又不想卸载它们。值得庆幸的是&#xff0c;macOS具有一些强大的文件管理功能&#xff0c;允许用户轻松隐藏&#xff08;以及稍后显示&#xff09;文件甚至应用程序。 那么&#xff0c;Mac电脑如何通过终端隐藏应用程…

《动手学深度学习(PyTorch版)》笔记7.6

注&#xff1a;书中对代码的讲解并不详细&#xff0c;本文对很多细节做了详细注释。另外&#xff0c;书上的源代码是在Jupyter Notebook上运行的&#xff0c;较为分散&#xff0c;本文将代码集中起来&#xff0c;并加以完善&#xff0c;全部用vscode在python 3.9.18下测试通过&…

XGB-6: 单调性约束Monotonic Constraints

在建模问题或项目中&#xff0c;通常情况下&#xff0c;可接受模型的函数形式会以某种方式受到约束。这可能是由于业务考虑&#xff0c;或者由于正在研究的科学问题的类型。在某些情况下&#xff0c;如果对真实关系有非常强烈的先验信念&#xff0c;可以使用约束来提高模型的预…

Redis -- 安装客户端redis-plus-plus

目录 访问reids客户端github链接 安装git 如何安装&#xff1f; 下载/编译、安装客户端 安装过程中可能遇到的问题 访问reids客户端github链接 GitHub - sewenew/redis-plus-plus: Redis client written in CRedis client written in C. Contribute to sewenew/redis-p…

Javaweb之SpringBootWeb案例之异常处理功能的详细解析

3. 异常处理 3.1 当前问题 登录功能和登录校验功能我们都实现了&#xff0c;下面我们学习下今天最后一块技术点&#xff1a;异常处理。首先我们先来看一下系统出现异常之后会发生什么现象&#xff0c;再来介绍异常处理的方案。 我们打开浏览器&#xff0c;访问系统中的新增部…