【NOIP普及组】质因数分解

【NOIP普及组】质因数分解

      • C语言代码
      • C++代码
      • Java代码
      • Python代码


💐The Begin💐点点关注,收藏不迷路💐

已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数。

输入

输入只有一行,包含一个正整数 n。

输出

输出只有一行,包含一个正整数 p,即较大的那个质数。

样例输入

21

样例输出

7

提示

【数据范围】
对于 60%的数据,
6≤n≤1000。
对于 100%的数据,
6≤n≤2∗10^9 。

C语言代码

#include <stdio.h>
#include <math.h>int main() {int n;  // 存储输入的正整数scanf("%d", &n);  // 读取输入的正整数int maxPrime = 0;  // 用于存储较大的质数,初始化为0// 从2开始遍历到n的平方根,因为一个数的因数不会超过它的平方根for (int i = 2; i <= sqrt(n); i++) { if (n % i == 0) {  // 如果i是n的因数int otherFactor = n / i;  // 计算另一个因数// 判断i和另一个因数是否都是质数int isIprime = 1;for (int j = 2; j <= sqrt(i); j++) {if (i % j == 0) {isIprime = 0;break;}}int isOtherFactorPrime = 1;for (int j = 2; j <= sqrt(otherFactor); j++) {if (otherFactor % j == 0) {isOtherFactorPrime = 0;break;}}// 如果i和另一个因数都是质数,更新较大的质数if (isIprime && isOtherFactorPrime) {maxPrime = (i > otherFactor)? i : otherFactor;}}}printf("%d\n", maxPrime);  // 输出较大的质数return 0;
}

C++代码

#include <iostream>
#include <cmath>int main() {int n;  // 存储输入的正整数std::cin >> n;  // 读取输入的正整数int maxPrime = 0;  // 用于存储较大的质数,初始化为0// 从2开始遍历到n的平方根,因为一个数的因数不会超过它的平方根for (int i = 2; i <= std::sqrt(n); i++) { if (n % i == 0) {  // 如果i是n的因数int otherFactor = n / i;  // 计算另一个因数// 判断i和另一个因数是否都是质数bool isIprime = true;for (int j = 2; j <= std::sqrt(i); j++) {if (i % j == 0) {isIprime = false;break;}}bool isOtherFactorPrime = true;for (int j = 2; j <= std::sqrt(otherFactor); j++) {if (otherFactor % j == 0) {isOtherFactorPrime = false;break;}}// 如果i和另一个因数都是质数,更新较大的质数if (isIprime && isOtherFactorPrime) {maxPrime = (i > otherFactor)? i : otherFactor;}}}std::cout << maxPrime << std::endl;  // 输出较大的质数return 0;
}

Java代码

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();  // 读取输入的正整数int maxPrime = 0;  // 用于存储较大的质数,初始化为0// 从2开始遍历到n的平方根,因为一个数的因数不会超过它的平方根for (int i = 2; i <= Math.sqrt(n); i++) { if (n % i == 0) {  // 如果i是n的因数int otherFactor = n / i;  // 计算另一个因数// 判断i和另一个因数是否都是质数boolean isIprime = true;for (int j = 2; j <= Math.sqrt(i); j++) {if (i % j == 0) {isIprime = false;break;}}boolean isOtherFactorPrime = true;for (int j = 2; j <= Math.sqrt(otherFactor); j++) {if (otherFactor % j == 0) {isOtherFactorPrime = false;break;}}// 如果i和另一个因数都是质数,更新较大的质数if (isIprime && isOtherFactorPrime) {maxPrime = (i > otherFactor)? i : otherFactor;}}}System.out.println(maxPrime);  // 输出较大的质数scanner.close();}
}

Python代码

import mathn = int(input())  # 读取输入的正整数maxPrime = 0  # 用于存储较大的质数,初始化为0# 从2开始遍历到n的平方根,因为一个数的因数不会超过它的平方根
for i in range(2, int(math.sqrt(n)) + 1): if n % i == 0:  # 如果i是n的因数otherFactor = n // i  # 计算另一个因数# 判断i和另一个因数是否都是质数isIprime = all(i % j!= 0 for j in range(2, int(math.sqrt(i)) + 1))isOtherFactorPrime = all(otherFactor % j!= 0 for j in range(2, int(math.sqrt(otherFactor)) + 1))# 如果i和另一个因数都是质数,更新较大的质数if isIprime and isOtherFactorPrime:maxPrime = max(i, otherFactor)print(maxPrime)  # 输出较大的质数

在这里插入图片描述


💐The End💐点点关注,收藏不迷路💐

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

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

相关文章

js--高阶函数之参数归一化

一、前言 参数归一化&#xff1a;是我们软件开发里一个非常重要且实用的技巧&#xff0c;用的好极大简化代码同时提升代码的可阅读性和可维护性。以下我用日期格式化为例&#xff0c;演示一下参数归一化的技巧。 二、日期格式化实例 /*** 辅助格式化函数* param {string|functi…

均值、期望、方差、标准差与协方差:基础概念解析

均值、期望、方差、标准差与协方差&#xff1a;基础概念解析 在统计学和数据分析中&#xff0c;均值、期望、方差、标准差和协方差是描述数据分布和关系的基本工具。理解这些概念有助于我们更好地分析和处理数据。本文将详细讲解这些概念的定义、计算方法及其在实际应用中的意…

shell基础

一、理解bash基础 默认的Linux shell——Bash&#xff08;Bourne Again SHell&#xff09;可以通过命令控制系统&#xff0c;执行文件操作&#xff0c;或者启动应用程序。它可以在命令行上交互式使用&#xff0c;或者你可以创建一个包含多个shell命令的文件&#xff0c;并像启…

js树状结构,自叶到根统计各级数量

$($(".tree-item").get().reverse()).each(function () {let self $(this).find("span").text()let prev $(this).parent(".two").prevAll(".tree-item").find("span").text()self self ? self : 0prev prev ? prev :…

学习threejs,使用JSON格式保存和加载整个场景

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️THREE toJSON()方法 二、&a…

论文1—《基于卷积神经网络的手术机器人控制系统设计》文献阅读分析报告

论文报告&#xff1a;基于卷积神经网络的手术机器人控制系统设计 摘要 本研究针对传统手术机器人控制系统精准度不足的问题&#xff0c;提出了一种基于卷积神经网络的手术机器人控制系统设计。研究设计了控制系统的总体结构&#xff0c;并选用PCI插槽上直接内插CAN适配卡作为上…

SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“

SLF4J常见问题 导入依赖&#xff1a; <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version> </dependency> <dependency><groupId>org.slf4j</groupId><arti…

资产管理系统:SpringBoot技术驱动

4系统概要设计 4.1概述 系统设计原则 以技术先进、系统实用、结构合理、产品主流、低成本、低维护量作为基本建设原则&#xff0c;规划系统的整体构架. 先进性&#xff1a; 在产品设计上&#xff0c;整个系统软硬件设备的设计符合高新技术的潮流&#xff0c;媒体数字化、压缩、…

YOLO可视化界面,目标检测前端页面。

使用PySide6/QT实现YOLOv5/v8可视化GUI页面 在人工智能和计算机视觉领域&#xff0c;YOLO&#xff08;You Only Look Once&#xff09;是一种广泛使用的实时目标检测算法。为了直观地展示YOLO算法的检测效果&#xff0c;我们可以使用Python中的PySide6库来创建一个简单的GUI应…

使用vuex动态设置全局字号

1.安装vuex npm install vuexnext --save 2.编写字号设置样式 // 定义字号变量 :root {--font-size: 18px;--font-size-step1: 16px;--font-size-step2: 14px;--font-size-step3: 12px; } // 定义样式&#xff08;全局样式文件&#xff09; body, page {font-size: var(--fo…

编程爱好者的福音:实用技巧与教程

引言 你是否曾经因为代码无法正常运行而感到挫败&#xff1f;或者在面对一行行复杂的代码时&#xff0c;不知道从何下手&#xff1f;编程&#xff0c;这项充满挑战与创造力的技能&#xff0c;往往让人既爱又恨。无论你是刚刚入门的初学者&#xff0c;还是已经具备一定经验的开发…

了解bootstrap改造asp.net core MVC的样式模板

我们都知道&#xff0c;在使用默认的asp.net core MVC模板建立项目的时候&#xff0c;里面的样式是已经事先被写好了的。一般来说都在css目录下的site.css和bootstrap.css及下面的bootstrap.min.css中。我们打开bootstrap这些样式文件&#xff0c;里面有大量的样式类的定义&…

通过使用 FFmpeg 提取某站视频 MV 中的音频为 MP3

无论是为了个人收藏、制作播客还是作为背景音乐&#xff0c;将视频中的音频提取出来都是一个非常实用的技能。本教程中简鹿办公将介绍两种方法来实现这一目标&#xff1a;一种是通过命令行工具 FFmpeg&#xff0c;另一种是使用图形界面工具 - 简鹿音频格式转换器。 使用 FFmpeg…

探秘国际数字影像产业园:数字化转型之路

数字化园区的概念正日益受到全球瞩目&#xff0c;这不仅是科技进步的必然产物&#xff0c;更是现代经济发展的迫切需求。对于国际数字影像产业园而言&#xff0c;打造数字化园区意味着通过尖端科技手段&#xff0c;全面提升园区的管理效率、服务质量及入驻企业和居民的生活体验…

外包干了2年,快要废了。。

先说一下自己的情况&#xff0c;普通本科&#xff0c;在外包干了2年多的功能测试&#xff0c;这几年因为大环境不好&#xff0c;我整个人心惊胆战的&#xff0c;怕自己卷铺盖走人了&#xff0c;我感觉自己不能够在这样蹉跎下去了&#xff0c;长时间呆在一个舒适的环境真的会让一…

5G的发展演进

5G发展的驱动力 什么是5G [远程会议&#xff0c;2020年7月10日] 在来自世界各地的政府主管部门、电信制造及运营企业、研究机构约200多名会议代表和专家们的共同见证下&#xff0c;ITU-R WP 5D#35e远程会议宣布3GPP 5G技术&#xff08;含NB-IoT&#xff09;满足IMT-2020 5G技…

【C++打怪之路Lv14】- “多态“篇

&#x1f308; 个人主页&#xff1a;白子寰 &#x1f525; 分类专栏&#xff1a;重生之我在学Linux&#xff0c;C打怪之路&#xff0c;python从入门到精通&#xff0c;数据结构&#xff0c;C语言&#xff0c;C语言题集&#x1f448; 希望得到您的订阅和支持~ &#x1f4a1; 坚持…

Github 2024-11-05 Python开源项目日报Top10

根据Github Trendings的统计,今日(2024-11-05统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目10HTML项目1TypeScript项目1系统设计指南 创建周期:2507 天开发语言:Python协议类型:OtherStar数量:241693 个Fork数量:42010 次…

如何从 Android 图库中恢复误删除的照片

如果您正在阅读这篇文章&#xff0c;那么您肯定意外地从 Android 设备中删除了照片。并且您正在寻找一种简单的方法来恢复 Android 图库中已删除的照片。 从图库恢复已删除的照片 随着技术的进步&#xff0c;现在使用单个设备&#xff08;即 Android 手机&#xff09;&#xf…

ESP-HaloPanel:用 ESP32-C2 打造超低成本智能家居面板

项目简介 在生活品质日益提升的今天&#xff0c;智能家居系统已经走进了千家万户&#xff0c;并逐渐成为现代生活的一部份。与此同时&#xff0c;一款设计精致、体积轻盈、操作简便的全屋智能家居控制面板&#xff0c;已经成为众多家庭的新宠。这种高效、直观的智能化的解决方…