当前位置: 首页 > news >正文

【蓝桥杯】24省赛:数字串个数

在这里插入图片描述

思路

本质是组合数学问题:
9个数字组成10000位数字有9**10000可能
不包括3的可能8**10000
不包括7的可能8**10000
既不包括3也不包括77**10000
根据容斥原理:结果为
9 ∗ ∗ 10000 − 8 ∗ ∗ 10000 − 8 ∗ ∗ 10000 + 7 ∗ ∗ 10000 9**10000 - 8**10000 - 8**10000 + 7**10000 910000810000810000+710000

代码

这是道填空题,只需填入结果即可。但是直接运行会爆栈。需要快速幂优化。
!! 注意mod=int(1e9+7)必须将浮点型转为整型,否则会出错。

import os
import sys

def ksm(a,n,mod):
  if n==0:return 1
  if n==1:return a
  res = ksm(a,n//2,mod)
  res = res*res % mod
  if n%2==1:
    res = res*a % mod
  return res

mod = int(1e9+7)
# 10000
a = ksm(9,10000,mod)
b = ksm(8,10000,mod)
c = ksm(7,10000,mod)
# an = 9**10000 - 8**10000 - 8**10000 + 7**10000
an = (a - 2 * b + c) % mod
print(an)

相关文章:

  • 如何在实际应用中测量和调整直线导轨的预紧力?
  • c++stl之unordered-map以及set
  • CentOS系统中使用sendmail
  • Python爬虫:playwright的使用
  • 【数据结构】数据结构,算法 概念
  • @SpringBootApplication
  • 9.贪心算法
  • 每日一题---单词搜索(深搜)
  • 本地化部署Deepseek关于Ollama 安全加固方案(新手易学)
  • 基于SpringBoot实现旅游酒店平台功能十六
  • element 的tab怎么动态根据参数值添加一个vue页面
  • UE4-UE5虚幻引擎,前置学习一--Console日志输出经常崩溃,有什么好的解决办法
  • C#的简单工厂模式、工厂方法模式、抽象工厂模式
  • C语言中关于数组和指针的重点知识
  • Hive SQL 精进系列:PERCENTILE_APPROX 搞定分位数
  • Android Dagger2 框架辅助工具模块深度剖析(六)
  • 运维工具推荐 -- 宝塔面板:一键部署服务器
  • Blender-MCP服务源码5-BlenderSocket插件安装
  • SOME/IP:用Python实现协议订阅、Offer、订阅ACK与报文接收
  • 《Python实战进阶》No24: PyAutoGUI 实现桌面自动化
  • 孝感网页设计/沈阳seo技术
  • 威海互联网公司/温州seo招聘
  • 合肥做公司网站公司/招聘seo专员
  • 各网站网络营销产品价格策略/腾讯企点官网下载
  • 做网站构架用什么软件/网店推广方法
  • wordpress添加商品画廊/东莞seo优化团队