质因数分解

cpp 复制代码
#include <stdio.h>

int main() 
{
    long long x;
    
    while (scanf("%lld", &x) != EOF) 
    { // 读取输入直到文件结束
        if (x == 0) break; // 如果输入为0则退出循环
        
        for (long long i = 2; i * i <= x; ++i) 
        {
            while (x % i == 0) 
            { // 当x能被i整除时
                printf("%lld ", i); // 输出质因数i
                x /= i; // 将x除以i
            }
        }
        
        if (x > 1) 
        { // 如果x大于1,那么它本身就是一个质数
            printf("%lld ", x);
        }
        
        printf("\n"); // 每组输出一行
    }
    
    return 0;
}

1.把握好数学上质数的性质

2.能用for循环解决的问题尽量避免数组,现阶段使用数组会使问题复杂化

相关推荐
爱学习的capoo几秒前
电气控制与PLC考点(自用)
算法
byzh_rc11 分钟前
[算法设计与分析-从入门到入土] 递归
数据库·人工智能·算法·机器学习·支持向量机
Yuer202514 分钟前
WebRTC 实时语音交互如何支持“可中断”?为什么状态机(FSM)是绕不开的方案
算法·rust·webrtc·fsm
CoderCodingNo17 分钟前
【GESP】C++五级真题(数论、埃氏筛思想考点) luogu-B3969 [GESP202403 五级] B-smooth 数
开发语言·c++·算法
思成Codes30 分钟前
数据结构: 权值线段树——线段树系列(提供模板)
数据结构·算法
笨手笨脚の31 分钟前
链表与LinkedList
java·数据结构·链表·linkedlist
历程里程碑34 分钟前
破解三数之和:双指针高效解法
c语言·数据结构·c++·经验分享·算法·leetcode·排序算法
Vect__37 分钟前
25.12.27 算法日记——双指针
c++·算法
Swizard39 分钟前
数据不够代码凑?用 Albumentations 让你的 AI 模型“看”得更广,训练快 10 倍!
python·算法·ai·训练
AI题库1 小时前
NLTK自然语言处理实战:1.3 NLTK核心数据结构
数据结构·人工智能·自然语言处理