蓝桥杯3527阶乘的和 | 组合数学

写在前面的话

昨天的蓝桥杯每日一题 奇怪的数 用python写太难了,甚至题解的优化处理也只能得70分(后几个TLE了),但是C++写 不优化的6层for循环+后4位复用 可以直接过。(雾)

题目传送门


这个题目的思路是对Ai排序后,记录每个Ai出现的次数dic[Ai]。显然最小的A0满足m。每次遍历dic,如果m对应的Ai出现的次数是Ai+1的倍数,那么将其并入dic[Ai+1],同时m++。当m无法满足次数的倍数关系时m值即为所求。


python 复制代码
from collections import defaultdict
n = int(input())
ai = list(map(int, input().split()))
ai.sort()
m = ai[0]
dic = defaultdict(int)	# 因为python的dict()不支持类似C++中map的运算操作,所以引入defaultdict

for it in ai:
    dic[it] += 1

while True:
    x = dic[m]
    if x %(m + 1) != 0:
        break
    dic[m+1] += x//(m+1)
    m += 1

print(m)

END✨


相关推荐
FreakStudio1 小时前
保姆级 uPyPi 教程|从 0 到 1:MicroPython 驱动包一键安装 + 分享全攻略
python·嵌入式·电子diy
清水白石0081 小时前
Python 对象序列化深度解析:pickle、JSON 与自定义协议的取舍之道
开发语言·python·json
2401_876907521 小时前
Python机器学习实践指南
开发语言·python·机器学习
张张123y2 小时前
RAG从0到1学习:技术架构、项目实践与面试指南
人工智能·python·学习·面试·架构·langchain·transformer
Shi_haoliu2 小时前
openClaw源码部署-linux
前端·python·ai·openclaw
gf13211112 小时前
python_查询并删除飞书多维表格中的记录
java·python·飞书
带娃的IT创业者3 小时前
WeClaw 离线消息队列实战:异步任务队列如何保证在服务器宕机时不丢失任何一条 AI 回复?
运维·服务器·人工智能·python·websocket·fastapi·实时通信
坐吃山猪4 小时前
Python进度条
linux·服务器·python
l1t5 小时前
四种python工具包用SQL查询csv和parquet文件的方法比较
大数据·python·sql