试题 算法提高 8-1因式分解

因式分解算法 因式分解,算法导论上的算法,还是有点问题,有些数不能得到正确的值 立即下载

2020蓝桥杯习题汇总

资源限制
时间限制:10.0s 内存限制:256.0MB
问题描述
  设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出23。输入20,输出22*5。
样例
  与上面的样例输入对应的输出。
  例:
在这里插入图片描述

数据规模和约定
  输入数据中每一个数在int表示范围内。
  
分析:这里借用了我之前写的分解质因数的一篇文章传送门
这道题问题在于怎样避免超时,所以我们应该尽量优化我们的代码

1.如果输入的数已经是质数了,那么可以直接输出,节省运行时间。
如果不是质数,那么就从2开始求解质因数;假设这个数能被2整除,2.那我们应该直接利用循环一直除,直到该数不能被2整除,然后进行下一个数,直到循环结束。例如n=80,首先从2开始判断是否为80的质因数,很明显80能被2整除,那我们就一直除,直到不能被2整除,即80/2=40,40/2=20,20/2=10,10/2=5,此时n=5不能被2整除,而且3和4也不行,直接到5/5=1,此时循环结束。
3.还有一个问题就是除尽某个质因数之后,要判断该数是否为质数,如果该数是质数,那么直接返回该数,这样子可以省下很多时间,避免超时。
4.其次,在判断质数时,分为偶数和奇数,偶数情况下都不是质数,奇数情况下只需要判断到根号n+1的情况即可,并且步长为2,这样也减少了时间上的消耗。

代码已通过蓝桥杯的测试,别忘了点个赞呀~

代码:

def fun(n):
    # 判断质数
    if n < 2:
        return False
    elif n % 2 == 0:
        return False   
    for i in range(3,int(pow(n,0.5))+1,2):
        if n % i == 0:
            return False
    return True

n = int(input())
res = []
for i in range(2,n+1):
    if n % i == 0:
        while n % i == 0:
            res.append(str(i))
            n //= i
    if fun(n):
        res.append(str(n))
        break
print('*'.join(res))
用AnythingLLM搭建私人RAG知识库:从入门到实战调优指南 大型语言模型虽然知识渊博,但无法触达私有文档中的具体内容,这正是检索增强生成(RAG)技术的核心价值所在。RAG通过先将文档切块并向量化,再在提问时检索最相关的片段拼接给模型,让AI基于指定资料精准回答,无需昂贵的模型微调。这种架构不仅让知识更新即时生效,还大幅降低了私有化部署的门槛。在实际工程中,RAG的落地需要合理选择嵌入模型、设计分块策略并调优检索参数,才能避免答非所问。对于个人或小团队,使用开源工具搭建本地知识库是最省心的路径,其中AnythingLLM以其开箱即用的特性,成为连接向量检索与模型推理 阅读详情

相关推荐

从SRIOV到SIOV:PCIe虚拟化技术下一代革命

如果说SR-IOV是过去十年PCIe虚拟化的“标杆方案”,那SIOV就是为超大规模云数据中心、AI集群量身打造的“破局者”——它解决了SR-IOV难以逾越的扩展性瓶颈,同时平衡了性能、成本与生态兼容性。今天就从“为什么需要SIOV”到“SIOV到底强在哪”,再到“未来要解决什么问题”,做一次全方位深度拆解。

存储随笔 2565

算法提高 8-1因式分解(蓝桥杯java)

题目 设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出23。输入20,输出22*5。 理解 首先得求出素数,求出不大于n的素数,装入数组中,然后在用递归解决。 代码 package mani; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class 因...

HU_YEI的博客 425

数字经济新质生产力数字化转型数据要素流通交易解决方案:数据要素化演进路径与管理、公共数据授权运营平台体系、数据底座、典型应用场景

数字经济的发展依赖于数据要素的有效流通与交易,数字化转型的核心在于数据的全生命周期管理和价值释放。数据要素化通过数据资源化、资产化和资本化的“三化”过程,实现其经济与社会价值。数据管理涵盖采集、存储、加工、分析等环节,支持数据的度量与交换。公共数据、企业数据和个人数据通过场内、场外及二级市场交易实现资本化。公共数据开发利用面临隐私泄露、监督管理难等痛点,目标是构建授权运营平台体系,确保数据流通的安全与效率。平台体系包括统一门户、授权管理、运营管理、合规监督等核心功能,支持明文、密文和可信交换流通方式。数据底

weixin_44094929的博客 1003

【DS】ADT_起泡排序的实现代码

代码 如下 #include<iostream> using namespace std; #define TRUE 1 #define FALSE 0 void bubble_sort(int a[], int n) { //将a中整数序列重新排列成自小至大有序的整数序列 bool change; for(int i = n - 1, change = TRUE; i ...

博客皆笔记 581

Vivado工程芯片型号更换全流程:从IP更新到生成新bit文件(避坑指南)

本文详细介绍了Vivado工程中更换芯片型号的全流程,包括IP更新、约束文件适配和生成新bit文件的关键步骤。特别针对FPGA开发中常见的兼容性问题提供避坑指南,帮助开发者高效完成芯片迁移,确保设计稳定性和性能优化。

weixin_42549451的博客 300

fpga在线升级 linux_仅5000行Verilog代码、可在FPGA上跑轻量级Linux系统的RISC-V内核

本文发布于www.hackster.io,由东京理工大学的计算机学院开发,专用于教学与加速用(苏老师也一直认为这是RISC-V当前的主要方向)。目前市场上开源的RISC-V内核已经很多,但很少有公开的RISC-V计算系统是非常轻型且能跑Linux系统的。这一款RISC-V内核就可以运行在FPGA上,用Verilog编写的,需要很少硬件的资源就能跑起来,所以可以运行在一个低成本的FPGA上。来看一下...

weixin_34083807的博客 1867

算法导论 — 思考题8-1 比较排序的概率下界

(比较排序的概率下界)在这一问题中,我们将证明对于给定的nnn个互异的输入元素,任何确定或随机的比较排序算法,其概率运行时间都有下界Ω(nlgn)Ω(n{\rm lg}n)Ω(nlgn)。首先来分析一个确定的比较排序算法AAA,其决策树为TATATA。假设AAA的输入的每一种排列情况都是等可能的。   a. 假设TATATA的每个叶结点都标有在给定的随机输入情况下到达该终点的概率。证明:恰有n!n...

yangtzhou的专栏 1477

CentOS 7 安装 Python 3.10

我这里已经软链接了,正常未链接之前是python->python2.7而不是python3.10。python2.7默认安装是在 /usr/bin目录中,切换到/usr/bin/更改yum配置,因为其要用到python2才能执行,否则会导致yum不能正常使用。2. 安装 Python 3.10 必需的 openssl >= 1.1.1。默认的centos7是没有安装pip,先添加epel扩展源。/usr/bin/python 修改为如下。添加软链接,将原来的链接备份。添加python3的软链接。

bensonyang888的博客 2906

蓝桥试题 算法提高 8-1因式分解 JAVA

问题描述   设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出23。输入20,输出22*5。 样例   与上面的样例输入对应的输出。   例: 120 2*2*2*3*5 13 13 数据规模和约定   输入数据中每一个数在int表示范围内。    思路:就是取因数,挨个输出就行。 import java.util.Scanner; public class Main{ ...

高瑜的博客 4524

Chapter2、HDR流水线

HDR内容的获取(不同曝光时间的图片合成) 相机响应函数 HDR视频

qq_55621259的博客 2597

基于STM32L4XX、HAL库的AP6275S WIFI 模块驱动程序设计

支持802.11a/b/g/n/ac/ax (Wi-Fi 6)标准。// 这部分通常依赖于Broadcom提供的固件和驱动。// 这里需要添加Wi-Fi固件加载和初始化的代码。// 通常需要通过SDIO发送命令和接收响应。// 这里需要添加蓝牙HCI初始化代码。// 处理Wi-Fi和蓝牙数据。// 这里需要实现Wi-Fi连接逻辑。// 初始化SDIO和UART。// 确保蓝牙使能引脚已设置。// 关闭Wi-Fi和蓝牙。// 关闭Wi-Fi和蓝牙。// 打开Wi-Fi和蓝牙。// 初始化AP6275S。

zhusl6688的博客 277

蓝桥杯试题 算法提高 8-1因式分解 C/C++

试题 算法提高 8-1因式分解 资源限制 时间限制:10.0s 内存限制:256.0MB 问题描述   设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出23。输入20,输出22*5。 样例   与上面的样例输入对应的输出。   例: 数据规模和约定   输入数据中每一个数在int表示范围内。 思路:首先找出输入n中所有的素数,然后开始分解,从小开始逐步分解,分解到小于这个数字...

杜晓帅~的博客 487

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

算法提高 8-1因式分解

算法提高 8-1因式分解 时间限制:10.0s 内存限制:256.0MB 问题描述   设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2*3。输入20,输出2*2*5。 样例   与上面的样例输入对应的输出。   例: 数据规模和约定   输入数据中每一个数在int表示范围内。 //1.判断素数; //2调用DFS(); //3.记录素数因...

g666m666d666的博客 216

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

蓝桥杯--算法提高 8-1因式分解(java)

资源限制 时间限制:10.0s 内存限制:256.0MB 问题描述   设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2 * 3。输入20,输出2 * 2 * 5。 样例   与上面的样例输入对应的输出。   例: 数据规模和约定   输入数据中每一个数在int表示范围内。 import java.util.Scanner; public class Main { /...

QinLaoDeMaChu的博客 275

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

蓝桥杯java 因式分解(内含解题思路,代码,注释)

试题 算法提高 8-1因式分解 资源限制 时间限制:10.0s 内存限制:256.0MB 问题描述   设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2 * 3。输入20,输出2 * 2 * 5。 样例   与上面的样例输入对应的输出。   例: 数据规模和约定   输入数据中每一个数在int表示范围内。 解题思路: 其实这是一个比较简单的数学问题,重点在于处理好中间的...

黄瓜炒鸡蛋的博客 524

蓝桥杯题库题解合集(C/C++实现)

文章目录二、基础练习BASIC-1 闰年判断BASIC-2 01字串BASIC-3 字母图形BASIC-4 数列特征BASIC-5 查找整数BASIC-6 杨辉三角形BASIC-7 特殊的数字BASIC-8 回文数BASIC-9 特殊回文数BASIC-10 十进制转十六进制BASIC-11 十六进制转十进制BASIC-12 十六进制转八进制BASIC-13 数列排序二、算法训练ALGO-1 区间k...

薛崇祥的博客 5481

“蓝桥杯”练习系统试题集,题解答案(C/C++)

基础练习 BASIC-1 闰年判断 #include&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; using namespace std; bool f(int x){ if(x%4==0&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;a

薛崇祥的博客 7570

蓝桥杯题库 算法提高非vip部分(C++、Java)代码实现(201-250)

文章目录ADV-205 拿糖果cpp:java:ADV-208 矩阵相乘cpp:java:ADV-215 Problem S4: Interesting Numbers 加强版cpp:java:ADV-217 c++_ch04_02_修正版cpp:java:ADV-218 递推求值cpp:java:ADV-219 组合公式求值java:ADV-221 7-1用宏求球的体积cpp:java:ADV-...

薛崇祥的博客 1075

DAY 13 素数小结 超用心

本次小结要介绍所有有关素数的*知识,题解与模板! 这是目前为止写的最用心的一次博客了,耗时3个小时!边学边做题边写。 首先要介绍的是最普通的素数判定!!!!! 先上例题: 试题 算法提高 素数判断 资源限制 时间限制:1.0s 内存限制:512.0MB 编写一函数IsPrime,判断某个大于2的正整数是否为素数。 样例输入: 5 样例输出: yes 样例输入: 9 样例输出: no 注意:是素...

OWCYKH的博客 302

蓝桥杯习题答案汇总

这篇文章是为了方便查看写过的题目,整理如下: 入门训练 试题 入门训练 A+B问题 试题 入门训练 序列求和 试题 入门训练 圆的面积 试题 入门训练 Fibonacci数列 基础练习 试题 基础练习 时间转换 试题 基础练习 十六进制转八进制 试题 基础练习 杨辉三角形 试题 基础练习 十六进制转十进制 算法训练 试题 算法训练 排序 试题 算法训练 1的个数 试题 算法训练 大等于n的最小完全平方数 试题 算法训练 P0505 试题 算法训练 删除数组零元素 试题 算法训练 区间k大数查询 试

小黄的博客 4676

NOIP2014提高组第二题联合权值

还是先看题吧: 试题描述 无向连通图 G 有 n 个点,n-1 条边。点从 1 到 n 依次编号,编号为 i 的点的权值为 Wi ,每条边的长度均为 1。图上两点(u, v)的距离定义为 u 点到 v 点的最短距离。对于图 G 上的点对(u, v),若它们的距离为 2,则它们之间会产生Wu * Wv 的联合权值。请问图 G 上所有可产生联合权值的有序...

XIN13261615514的博客 195
上一篇: 试题 算法提高 欧拉函数
下一篇: 试题 算法提高 比大小
xiao黄
xiao黄 优质创作者: 人工智能技术领域 优质创作者: 人工智能技术领域 领域专家: 数据科学与机器学习技术领域 领域专家: 数据科学与机器学习技术领域
博客等级 码龄8年 1万+粉丝 250原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiao黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值