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

题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和--不能完全通过,最好情况通过67.

原题链接:

题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和
https://www.dotcpp.com/oj/problem3166.html

致歉

害,首先深感抱歉,这道题还是没有找到很好的解决办法。目前最好情况就是67分。
在这里插入图片描述
这道题先这样跳过吧,当然以后还是有看到能完全通过的,我能理解的题解,再进行补充。

下面对上述两种情况进行分析:
等等等等,首先还是的阐明解题思路,
贯彻一个核心点: m! 为∑ni=1(Ai!) 的因数的最大,即和的最大因数。

由于不太会使用这个编辑器里的公式,我就手写了哈,见谅

在这里插入图片描述
脑袋里要知道这个,这是解题的大前提,即我们要找到最小的可以mod数。

(1)时间超限62

这种结题思路,即求和,然后取阶乘,然后从1开始逐个数进行判断,
在这里插入图片描述
可以看到,最多会有 1 0 5 10^5 105个数,数最大可以达到 1 0 9 10^9 109,所以这种方法必然超时。

代码如下:

package 蓝桥__真题__专题;import java.io.*;
import java.util.Scanner;public class _2023试题F_阶乘的和02 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static int nextInt() throws Exception {st.nextToken();return (int) st.nval;}static long nextLong() throws Exception {st.nextToken();return (long) st.nval;}static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {int n = nextInt();int arr [] = new int[n+2];for (int i=1;i<=n;i++){arr[i] = nextInt();;}long ans =1L,p=1L;while (true){long sum = 0L;for (int i=1;i<=n;i++){long res=1;for (int j=2;j<=arr[i];j++){res=res*j%ans;}sum=(sum+res)%ans;}//--------------------------------------------if (sum==0){ans*=(++p);}else {break;}}//whilepw.println(p-1);//System.out.println(p-1);pw.flush();//scanner.close();}
}

解决思路:

  1. 构造1- 1 0 9 10^9 109的一个辅助数组之类的,存储这些数,这样求阶乘的时候,就可以直接得出来。
    但是这样遇到的问题有:
  • 10^9这么大的数组,会爆
  • 假如上一个是3!,下一个直接10!,中间的阶乘我都不知道,那我怎么快速定位到3!开始继续探索到10!

没想通,因此还是有很大的超时问题。

答案错误67


这是数学规律解法,但是还没完全找出所有规律,只发现了个浅显的,没空一直搞这个= =~
可以看到耗时非常短,
在这里插入图片描述
是上一种的20倍。

规律

大家有做,有思考几下的话,会发现一个普遍的规律,即:

大部分情况下满足:

  • 只要总个数不等于最小的数min+1,那么所有输入的数中min就是我们要找的值。

在这里插入图片描述

从上面这个公式也可以看到,要在满足4!下继续去向下找,那么大概率肯定就是4!了。
当时肯定例外也是很多的了。

代码

package 蓝桥__真题__专题;import java.io.*;public class _2023试题F_阶乘的和06 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static int nextInt() throws Exception {st.nextToken();return (int) st.nval;}static long nextLong() throws Exception {st.nextToken();return (long) st.nval;}static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {int n = nextInt();int arr [] = new int[n+2];int min = Integer.MAX_VALUE;for (int i=1;i<=n;i++){arr[i] = nextInt();;if (arr[i]<min){min = arr[i] ;}}if (n==(min+1)){pw.println(n);}else {pw.println(min);}pw.flush();pw.close();}}

相关文章:

题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和--不能完全通过,最好情况通过67.

原题链接&#xff1a; 题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和 https://www.dotcpp.com/oj/problem3166.html 致歉 害&#xff0c;首先深感抱歉&#xff0c;这道题还是没有找到很好的解决办法。目前最好情况就是67分。 这道题先这样跳过吧&#xff0c;当然以后还…...

ChatGPT- OpenAI 的 模型(Model) 介绍

ChatGPT的火爆程度大家都知道了&#xff0c;该章节我们来了解一下 ChatGPT 一个关键概念 - 模型(Model)。主要是为大家介绍一下在 OpenAI 中&#xff0c;究竟有哪些模型可以使用。 在后续的章节&#xff0c;我们会分单独的小章节逐一的为大家介绍各个不同模型的调用以及接口参…...

X 态及基于 VCS 的 X-Propagation 检测

&#x1f525;点击查看精选 IC 技能树系列文章&#x1f525; &#x1f525;点击进入【芯片设计验证】社区&#xff0c;查看更多精彩内容&#x1f525; &#x1f4e2; 声明&#xff1a; &#x1f96d; 作者主页&#xff1a;【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#…...

数据库之事务隔离级别详解

事务隔离级别详解 一、事务的四大特性&#xff08;ACID&#xff09;1. 原子性(atomicity)&#xff1a;2. 一致性(consistency)&#xff1a;3. 隔离性(isolation)&#xff1a;4. 持久性(durability)&#xff1a; 二、事务的四种隔离级别1. 读未提交(Read uncommitted)&#xff1…...

守护进程、僵尸进程、孤儿进程

守护进程、僵尸进程、孤儿进程 守护进程&#xff08;Daemon Process&#xff09; 定义 守护进程又称Daemon进程&#xff08;精灵进程&#xff09;&#xff0c;是Linux中的后台服务进程。 它的生命周期较长&#xff0c;通常独立于控制终端并且周期性地执行某种任务或者等待处…...

软件设计师笔记

软件设计师笔记 计算机组成与体系结构 数据的表示、计算机结构、Flynn分类法、CISC与RISC、流水线技术、存储系统、总线系统、可靠性、校验码 1. 数据的表示 &#xff08;一&#xff09;进制转换 R进制转十进制使用按权展开法&#xff1a; 十进制转R进制使用短除法 二进制…...

4_用dockerfile制作镜像

Docker 镜像原理 思考&#xff1a; Docker 镜像本质是什么&#xff1f; Docker 中一个centos镜像为什么只有200MB&#xff0c;而一个centos操作系统的iso文件要几个个G&#xff1f; Docker 中一个tomcat镜像为什么有500MB&#xff0c;而一个tomcat安装包只有70多MB&#xff…...

肝一肝设计模式【四】-- 建造者模式

系列文章目录 肝一肝设计模式【一】-- 单例模式 传送门 肝一肝设计模式【二】-- 工厂模式 传送门 肝一肝设计模式【三】-- 原型模式 传送门 肝一肝设计模式【四】-- 建造者模式 传送门 文章目录 系列文章目录前言一、什么是建造者模式二、举个栗子三、静态内部类写法四、开源框…...

从设计到产品

从设计到产品 最近上的一些课的笔记&#xff0c;从 0 开始设计项目的角度去看产品。 设计系统 设计系统(design system) 不是 系统设计(system design)&#xff0c;前者更偏向于 UI/UX 设计部分&#xff0c;后者更偏向于实现部分。 个人觉得&#xff0c;前端开发与 UI/UX 设…...

《疯狂Python讲义》值传递的细节

函数的参数包含着整个程序的规范性&#xff0c;之前还是没有那么去注意重要的细节&#xff0c;读完书中函数值传递篇章&#xff0c;还是有所收获的。 参数有两种形式&#xff0c;一种是形参一种是实参&#xff0c;形参可以理解为实参的载体&#xff0c;函数当中的关键词也是描…...

【7. ROS 中的 IMU 惯性测量单元消息包】

欢迎大家阅读2345VOR的博客【6. 激光雷达接入ROS】&#x1f973;&#x1f973;&#x1f973; 2345VOR鹏鹏主页&#xff1a; 已获得CSDN《嵌入式领域优质创作者》称号&#x1f47b;&#x1f47b;&#x1f47b;&#xff0c;座右铭&#xff1a;脚踏实地&#xff0c;仰望星空&#…...

pcie m.2固态硬盘装机后无法识别到启动盘

1、第一种情况《系统版本过低》 原因&#xff1a; 使用m.2固态硬盘的电脑&#xff0c;最好安装iwn8.1以上的系统&#xff0c;因为win7系统及其win xp系统 没有自带NVME驱动。 搞定办法&#xff1a; 比较简单的方式就是直接开运行快启动u盘启动盘制作工具将系统升级到win10系…...

Java Web应用开发 ——第四章:JavaBean技术测验

一.单项选择题&#xff08;共13题,55.9分&#xff09; 1 在 JSP 中调用 JavaBean 时不会用到的标记是&#xff1a;&#xff08; &#xff09; A、 < jsp:javabean> B、 < jsp:useBean> C、 < jsp:setProperty> D、 < jsp:getProperty> 正确答案&a…...

CTF权威指南 笔记 -第二章二进制文件- 2.4 -动态链接

目录 静态文件的缺点 动态链接 位置无关代码 延迟绑定 _dl_runtime_reslove 函数定义 深入审视 静态文件的缺点 随着可执行文件的增加 静态链接带来的浪费空间问题就会愈发严重 如果大部分可执行文件都需要glibc 那么在链接的时候就需要把 libc.a链接进去 如果一个libc…...

C++:计算机操作系统:多线程:高并发中的线程

高并发中的线程 一切要从CPU说起PC 程序计数器从CPU到操作系统从进程到线程 从这篇开始&#xff0c;我将会开启高性能&#xff0c;高并发系列&#xff0c;本篇是给系列的开篇&#xff0c;主要关注 多线程以及线程池。 一切要从CPU说起 你可能会有疑问&#xff0c;讲多线程为何…...

大数据Doris(十一):Aggregate 数据模型

文章目录 Aggregate 数据模型 一、导入数据聚合 二、保留明细数据...

osg::Drawable类通过setDrawCallback函数设置回调函数的说明

osg::Drawable类可以通过该类的setDrawCallback函数设置回调函数类对象。被设置的回调类对象必须从osg::Drawable::DrawCallback类派生&#xff0c;并重写drawImplementation函数&#xff0c;以实现自己特定的需求。这个回调函数在每次帧事件中都会被调用(如&#xff1a;在帧的…...

Python基础合集 练习17(类与对象)

class Dog: pass papiDog() print(papi) print(type(papi)) 构建方法 创建类过后可以定义一个特殊的方法。在python中构建方法是__init__(),init()必须包含一个self参数 class pig(): #def__init__(self) -> None&#xff1a; print(‘你好’) pipgpig() 属性和方法 cl…...

再多猜一次就爆炸(小黑子误入)

目录 猜数字游戏 游戏设计思路 1.电脑随机生成一个数 2.猜数字 3.输入我是ikun&#xff0c;泰裤辣! 否则电脑将在一分钟后关机 游戏运行效果 源码 代码分析 代码实现关键语句 strcmp() rand()与srand() 时间戳time() 寄语 猜数字游戏 游戏设计思路 1.电脑随机生…...

图像超分辨率简单介绍

文章目录 图像超分辨率简单介绍什么是图像超分辨率&#xff1f;常见的图像超分辨率算法插值算法基于边缘的图像重建算法局部线性嵌入&#xff08;LLE&#xff09;拉普拉斯正则化 基于深度学习的超分辨率算法超分辨率CNN超分辨率GAN 步骤1. 收集数据2. 选择算法3. 训练模型4. 测…...

告别ElementUI日历的默认样式!手把手教你用SCSS深度定制一个高颜值日历组件

从零打造高颜值日历组件&#xff1a;ElementUI Calendar深度定制指南 当你打开项目后台管理系统&#xff0c;那个灰扑扑的默认日历组件是否总让你皱眉&#xff1f;作为前端开发者&#xff0c;我们经常需要在不破坏原有功能的前提下&#xff0c;为ElementUI的Calendar组件换上符…...

KLayout版图设计工具:从零开始掌握免费芯片设计解决方案

KLayout版图设计工具&#xff1a;从零开始掌握免费芯片设计解决方案 【免费下载链接】klayout KLayout Main Sources 项目地址: https://gitcode.com/gh_mirrors/kl/klayout 你是否正在寻找一款功能强大且完全免费的芯片版图设计工具&#xff1f;KLayout正是这样一个开源…...

GPTMessage项目拆解:SwiftUI+Combine集成OpenAI与Hugging Face API实战

1. 项目概述与核心价值最近在折腾一个挺有意思的Side Project&#xff0c;一个叫GPTMessage的iOS/macOS应用。简单来说&#xff0c;它把ChatGPT的聊天能力、DALLE的图像生成&#xff0c;还有Hugging Face上的一些模型&#xff08;比如图像描述、Stable Diffusion&#xff09;给…...

白起杀降将卒,项羽杀降,黄巢他们有的选择吗?

杀降不是暴君的个人意志&#xff0c;而是一场场被逼到极限的“系统自保”。 白起要为40万战俘找活路&#xff0c;项羽要喂活20万张嘴并防止后院起火&#xff0c;黄巢要让自己和十几万兄弟明天不饿死。杀降本身这份“答卷”固然是反人类的&#xff0c;但那份出题人的冷酷与无情&…...

weclaw:面向生产环境的现代化Python爬虫框架设计与实战

1. 项目概述与核心价值最近在开源社区里&#xff0c;一个名为weclaw的项目引起了我的注意。这个项目由shp-ai组织维护&#xff0c;从名字上乍一看&#xff0c;可能有点摸不着头脑——“weclaw”听起来像“we claw”&#xff08;我们抓取&#xff09;的变体。点进去一看&#xf…...

BBDown完全指南:5分钟掌握B站视频下载终极方案

BBDown完全指南&#xff1a;5分钟掌握B站视频下载终极方案 【免费下载链接】BBDown Bilibili Downloader. 一个命令行式哔哩哔哩下载器. 项目地址: https://gitcode.com/gh_mirrors/bb/BBDown 你是否经常遇到想收藏B站优质视频却找不到合适工具的困扰&#xff1f;当网络…...

程序员转智能体开发,从入门到落地,看这一篇就够了

文章目录前言一、为什么2026年是转智能体开发的最佳时机1.1 市场需求爆炸式增长&#xff0c;薪资再创新高1.2 传统程序员转型有三大天然优势二、智能体开发到底是什么&#xff1f;和传统开发有什么区别&#xff1f;2.1 从"命令式"到"声明式"的思维转变2.2 …...

分布式缓存策略:提升应用性能和可扩展性

分布式缓存策略&#xff1a;提升应用性能和可扩展性 一、分布式缓存概述 1.1 分布式缓存的定义 分布式缓存是一种将数据存储在多个节点上的缓存系统&#xff0c;它通过在内存中存储常用数据&#xff0c;减少对后端数据库的访问&#xff0c;从而提高应用性能和可扩展性。 1.…...

AI编程助手实战指南:从GitHub Copilot到全流程开发效率提升

1. 项目概述&#xff1a;当AI遇见编码的“氛围感”最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的仓库&#xff0c;叫Sunil6512/awesome-ai-vibe-coding。光看名字&#xff0c;awesome-ai-vibe-coding&#xff0c;就透着一股子新潮味儿。它不是一个具体的工具或者框架&am…...

虚拟工业仿真软件能模拟实操吗?看完你就懂了

在高端制造与复杂工程场景中&#xff0c;工业仿真软件是否只是“纸上谈兵”&#xff1f;它能否真正模拟出真实的物理过程、操作流程与系统行为&#xff1f;答案是&#xff1a;可以&#xff0c;而且正在改变工业研发的逻辑。秩益科技自主研发的DIMAXER工业仿真软件&#xff0c;正…...