蓝桥杯2022 python C组

news2024/12/27 0:59:25

蓝桥杯2022 python C组

跟之前的就四题不一样

第二题:特殊时间

在这里插入图片描述
就是i 从0-9,j从0-9 i是三个一样的,然后看看他们能不能成为 年 月日 时分
成为年只要大于0就好了,称为月日的话月要从1-12,日呢,特殊的日子就二月2829,但是如果你是2月28 29 的话前面那个就比如是22月,肯定不可能,所以不用考虑,最大也就2月22 ,还有31号,要31号的话只能是11月,但是11月没有31号,因此我们日子只要<31 就符合要求了

## 对于每三个数据和另一个数据我们为一个组合,例如1110为一个组合,找这个组合可以有多少种情况
## 把年  月日  时分 分开来讨论
numbers = [-1]*4
res = 0
for i in range(10):  # 三个一样的
    for j in range(10):
        y,m,hs = 0,0,0  # 计每个有多少种可能
        if i == j : continue
        for k in range(4):
            numbers[k] = j
            numbers[(k+1)%4] = numbers[(k+2)%4] = numbers[(k+3)%4] = i # 每种排列都求一次
            year = numbers[0]*1000 + numbers[1] * 100 + numbers[2] * 10+numbers[3] 
            months = hours = numbers[0]*10+numbers[1]
            day = minute = numbers[2]*10+numbers[3]

            if year > 0 : y += 1
            if months > 0 and months < 13 and day > 0 and day < 31:m += 1
            if hours > 0 and hours < 25 and minute >0 and minute < 60:hs += 1
        res += y*m*hs
print(res)

第七题:GCD

在这里插入图片描述

这题是试着找规律找出来的。。你如果先遍历小的然后去试你会发现

100 21 在题目中的最大公约数是79 k = 58
101 21 在题目中的最大公约数是80 k = 59
100 79 在题目中的最大公约数是21 k = 5
101 79 在题目中的最大公约数是 22 k = 9

你会发现,如果最大公约数在min(a,b)和max(a,b)之间,那么k = 最大公约数-min(a,b)。这个时候我就感觉肯定是有规律的。然后我就想下面那种情况,当最大公约数 <min(a,b)的时候,你会发现 100 + 5 = 215 101+9 = 225。发现,哦,就是找到一个最小t 使得t最大公约数 > max(a,b),然后k = t最大公约数-max(a,b)

# gcd(a+k,b+k) 最大值为 abs(a-b)
# 当 max1 < min(a,b)时,k 为 max1*t > max(a,b) 的最小值t,然后k的值为 t*max1 - max(a,b)
# 当 min(a,b) < max1 < max(a,b)时, k = max1 - min(a,b) 

if __name__ == '__main__':
    a,b = map(int,input().split())
    max1 = abs(a-b)
    if a == max1 or b == max1 : print(0)
    elif max1 < min(a,b) :
        k = max(a,b)//max1 + 1
        print(k*max1 - max(a,b))
    else: print(max1 - min(a,b))

第八题:青蛙过河

在这里插入图片描述

先想一下其实过去和回来是一样的,要考虑回来的其实也可以考虑成过去的,因为怎么过去我们就怎么回来。所以我们只要想象成有2x个青蛙一起过河就好了。

那么想要2x个青蛙一起过河,要满足什么条件呢?设青蛙每次最多跳跃y个,我们要从第i个石头到第i+y个石头的承重之和要>= 2*x,这样才能保证青蛙每次跳跃都可以成功。然后用二分查找就好了

## 想象成有2x个青蛙过河 
## 如果青蛙跳跃的最大能力是y ,那么代表石头从 i 到 i+y的前缀和应该大于等于 2*x
## 可以假设一下,如果有两只青蛙,最大跳跃能力是2 ,那么,a[1] + a[2]  = 2 表示他们两个一定可以跳到前两个石头上面
## 然后有 a[2] + a[3] = 2 那么在石头1上的青蛙就可以跳到石头3,a[3]+a[4] = 2,石头2上的青蛙就可以跳到石头4或者石头3,
## 如果都在石头3,那么又有a[4]+a[5] >= 2 他们两个又可以跳到石头4和石头5,依次类推跳到对岸
def check(mid):
    for i in range(1,n - mid +1):  # i + mid <= n
        if (b[i + mid - 1] - b[i-1] < 2*m): return False
    else: return True

if __name__ == '__main__':
    n,m = map(int,input().split()) # 宽度、能力
    a = [int(x) for x in input().split()]
    a = [10000]+a+[10000]  # 首尾是岸上承受能力设很大
    b = [0]*(n+1)
    b[0] = a[0] 
    for i in range(1,n+1):
        b[i] = b[i-1] + a[i]  # 前缀和
    ## 二分查找
    l,r = 1,n
    while l < r:
        mid = (l + r)//2
        if (check(mid)):
            r = mid 
        else : l = mid + 1
    print(l)

第九题:因数平方和

在这里插入图片描述

考虑一下,从1 到n ,i的平方和会被乘以n//i次,那么就很简单了

## 从1到n  i作为因子的个数为 n/i向下取整

if __name__ == '__main__':
    MOD  = 1000000007
    n = int(input())
    res = 0
    for i in range(1,n+1):
        k = n//i
        res += i*i*k % MOD
        res %= MOD
    print(res)

PS:不知道能不能过全部样例哈,应该可以优化一下,遍历到根号n就行

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kylin入门实战(数据源添加 + Model定义 + Cube构建 + 结果查询 + 查询限制)

目录1. 入门实战目的2. Hive源数据准备3. 创建project并添加Hive数据源4. 定义model5. 定义Cube6. 构建cube7. 查询cube构建后的结果8. 查询限制1. 入门实战目的 实现从不同的维度统计员工的工资&#xff0c;例如从岗位类型、员工年龄、部门等不同维度&#xff0c;进行多维度的…

【LeetCode每日一题】【2023/1/30】1669. 合并两个链表

文章目录1669. 合并两个链表方法1&#xff1a;模拟1669. 合并两个链表 LeetCode: 1669. 合并两个链表 中等\color{#FFB800}{中等}中等 给你两个链表 list1 和 list2 &#xff0c;它们包含的元素分别为 n 个和 m 个。 请你将 list1 中下标从 a 到 b 的全部节点都删除&#xff0…

亚信科技通信、交通行业数据库项目入选“星河”标杆、优秀案例

近日&#xff0c;由中国信息通信研究院、中国通信标准化协会大数据技术标准推进委员会&#xff08;CCSA TC601&#xff09;共同组织的第六届大数据“星河”案例评选结果公示&#xff0c;亚信科技及旗下亚信安慧支持完成的中国移动通信集团上海有限公司“业务支撑系统核心数据库…

Day 17 springboot 监听机制

1 Java 监听机制springboot监听机制&#xff0c;其实是对java提供的事件监听机制的封装。Java中的事件监听机制定义了以下几个角色&#xff1a;事件&#xff1a;Event&#xff0c;继承EventObject类&#xff0c;例如点击&#xff0c;拖动等等。事件源&#xff1a;Source&#x…

Python 正确重写运算符(重载)

运算符重载的作用是让用户定义的对象使用中缀运算符&#xff08;如和|&#xff09;和一元运算符&#xff08;如-和~&#xff09;。在Python中&#xff0c;这些也算是运算符&#xff1a;函数调用&#xff1a;()属性访问&#xff1a;.元素访问和切片&#xff1a;[]运算符重载基础…

RabbitMQ消息转换器

文章目录RabbitMQ消息转换器RabbitMQ消息转换器 在SpringAMQP的发送方法中&#xff0c;发送消息和接受消息的类型都是Object&#xff0c;也就是说&#xff0c;我们可以发送任意对象类型的消息&#xff0c;SpringAMQP都会帮我们把发送的消息序列化为字节后再进行发送。下面&…

剑指 Offer 第 16 天 把数组排成最小的数 扑克牌中的顺子

目录 面试题45. 把数组排成最小的数 面试题61. 扑克牌中的顺子 面试题45. 把数组排成最小的数 输入一个非负整数数组&#xff0c;把数组里所有数字拼接起来排成一个数&#xff0c;打印能拼接出的所有数字中最小的一个。 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输…

会声会影2023最新版v25.3.0.0视频剪辑软件

各位新年好呀&#xff0c;2022年的经历让我们更加成长&#xff0c;我们也终于迎来了新的一年。在这里&#xff0c;COCO玛奇朵先祝大家新年快乐&#xff0c;万事如意&#xff01; 会声会影是一款操作简单易学的视频剪辑软件&#xff0c;会声会影的编辑步骤是流程化的&#xff0…

lamp的简单搭建 小白笔记

笔记是观看哔哩哔哩视频所写。链接如下&#xff1a;经典LAMP架构-跟着老王学Linux_哔哩哔哩_bilibili笔记有多处不妥之处&#xff0c;本是自己写笔记加深印象&#xff0c;仅供参考。所用linux系统是CentOS7。注意&#xff1a;该笔记操作后的网站仅主机内的局域网可以访问&#…

【数学建模】常用算法-线性回归Python实现

1 前言 本文主要讲解基于线性回归的糖尿病预测的python实现&#xff0c;后续会进行进一步的更新 2 代码实现 2.1 数据准备 导入相关的包 import numpy as np import pandas as pd加载数据集 这个数据集是sklearn.datasets自带的糖尿病数据集&#xff08;diabetes&#xff…

I.MX6ULL内核开发2:内核模块实验2

目录 一、模块参数 二、符号共享 三、模块自动卸载 四、关于Makefile的说明 一、模块参数 根据不同应用场合给内核模块传递不同的参数&#xff0c;提高内核模块灵活性 定义一个常见变量使用module_param宏把传参值赋给变量module_param(name,type,perm) name: 参数名type…

uniapp弹幕

效果图 barrage.vue <template><view class"l-barrage"><block v-for"(item,index) in items" :key"index"><view v-if"item.display" class"aon" :style"{top: ${item.top}rpx}"><…

数据库丨记录一次TiDB v5.2.3迁移到v6.1.0的实操过程

文章目录前言一、环境简介二、迁移前提条件三、迁移方案四、迁移过程总结前言 TiDB 是一款结合了传统的关系型数据库和 NoSQL 数据库特性的新型分布式数据库。是第一个把数据分布在全球范围内的系统&#xff0c;并且支持外部一致性的分布式事务。 TiDB 具备强一致性和高可用性…

Struts2之注解

Struts2之注解1、引入依赖2、注解结构3、注解的使用1、引入依赖 Struts2中可以使用注解来代表struts.xml中的某些配置&#xff0c;可以简化配置。要使用注解&#xff0c;必须引入额外的依赖&#xff0c;如下&#xff1a; <!-- struts2注解依赖 --><dependency><…

未经风雨,怎见彩虹!回首2022,你好2023,新的一年,点面科技与您一起大展宏“兔”,扬眉“兔”气!

时光飞逝&#xff0c;转眼间2022虎年即将变成昨天的记忆。2022年&#xff0c;对于整个行业而言都是不寻常的一年&#xff0c;我们砥砺艰辛&#xff0c;着实经历着一场“寒冬”。但是&#xff0c;2022年注定也是不平凡的一年&#xff0c;在这个变中有定、变中求新的市场格局下&a…

【Rust】11. 泛型、Trait 和生命周期

11.1 泛型数据类型 11.1.1 函数的泛型 注意&#xff1a;泛型的比较适用于实现了 std::cmp::PartialOrd trait 的数据类型 11.1.2 结构体的泛型 结构体的泛型可以使用多个泛型类型参数 11.1.3 枚举的泛型 类似于结构体&#xff0c;枚举的泛型也可以使用多个泛型类型参数 11.…

Android 动画

在App中合理地使用动画能够获得友好愉悦的用户体验&#xff0c;Android中的动画有View动画、属性动画、帧动画、布局动画、转场动画等&#xff0c;在5.x以后有又新增了矢量动画&#xff0c;这些动画在平常开发中使用较为普遍&#xff0c;所以有必要做一次完整的总结。一、View动…

130道python练习题 完整版PDF

今天跟大家分享一些干货&#xff0c;在学python的朋友可以动起来了&#xff01; python基础知识练习题&#xff0c;常见常用的&#xff0c;可以作为参考&#xff0c;挺不错的&#xff0c;也有许许多多的讲解&#xff0c;适合python巩固基础知识和入门 130道练习题&#xff0c…

电脑网速慢怎么解决?提升网速真的很容易!

我们经常会使用电脑&#xff0c;如果加载网页的时间过长&#xff0c;或者是出现未响应的提示等问题&#xff0c;会非常影响我们使用电脑的观感。 针对这种问题&#xff0c;电脑网速慢怎么解决&#xff1f;来看看下面造成电脑网速慢的主要原因&#xff0c;以及我们该怎么提升电…

Python父类方法重写

在 Python 中&#xff0c;子类继承了父类&#xff0c;那么子类就拥有了父类所有的类属性和类方法。通常情况下&#xff0c;子类会在此基础上&#xff0c;扩展一些新的类属性和类方法。但凡事都有例外&#xff0c;我们可能会遇到这样一种情况&#xff0c;即子类从父类继承得来的…