分解质因数-进阶题10

分解质因数

题目

  • 问题描述
     求出区间a,b中所有整数的质因数分解。

  • 输入说明
    输入两个整数a,b。
      2<=a<=b<=10000

  • 输出说明
    每行输出一个数的分解,形如k=a1a2a3...(a1<=a2<=a3...,k也是从小到大的)(具体可看范例)

  • 输入范例

    3 10

  • 输出范例

    3=3
    4=22
    5=5
    6=2
    3
    7=7
    8=222
    9=33
    10=2
    5

解题思路

  • 本题思路是利用 试除法 + 模拟分解 来求区间内每个整数的质因数分解。对于区间 a,b 中的每一个整数 k,我们从最小的质数 2 开始,不断尝试用当前数去除 k。如果能够整除,则说明该数是一个质因数,将其记录下来,并让 k 不断除以该因子,直到不能整除为止;然后继续尝试下一个可能的因子(递增)。这个过程相当于从小到大"剥离"质因数,因此天然满足题目要求的 从小到大排序。当试除到 根号k 后,如果剩余的 k>1,说明它本身也是一个质数,需要单独输出。对区间内每个数重复上述过程,并按照指定格式输出即可。

整体代码

cpp 复制代码
#include <iostream>
using namespace std;

int main()
{
    int a, b;
    cin >> a >> b;

    for (int k = a; k <= b; k++)
    {
        cout << k << "=";

        int n = k;
        bool first = true;  // 控制是否输出'*'

        for (int i = 2; i * i <= n; i++)
        {
            while (n % i == 0)
            {
                if (!first) cout << "*";
                cout << i;
                n /= i;
                first = false;
            }
        }

        // 如果最后剩下的n>1,说明是一个质数
        if (n > 1)
        {
            if (!first) cout << "*";
            cout << n;
        }

        cout << endl;
    }

    return 0;
}

注意事项

  • 注意在分解过程中 n 会不断变小,因此循环条件用的是当前的 n。

英文段落翻译

自己翻译

Transformer模型是一个基于注意力机制,并且已经在自然语言处理领域取得了重要成就的一个神经网络结构。不像传统的现成的神经网络,Transformer不依靠一步一步的排序处理。他们使用自我注意机制来同时处理整个队列。这种结构不仅提升了模型运行平行的计算的能力,并且使得它能够更高效的捕捉大范围的依赖。在机器翻译任务中,Transformer模型能够积极的按照在一个句子中不同单词之间的关系安排注意力权重由此产出更准确的翻译。而且,Transformer结构已经被广泛应用在例如生成文本语音识别,甚至图像处理这些任务中了。在最近几年许多大规模预训练语言模型都是在Transformer结构上建造的,这已经极大的加速了人工智能技术的提高。

单词打卡

下一篇

待续

相关推荐
Chester_19994 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
会周易的程序员6 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
小灰灰搞电子6 小时前
完全驾驭 Qt 与数据库:C++ ORM 框架 QxOrm 原理与实践指南
数据库·c++·qt
QT界面美化性能优化6 小时前
QT+AI:使用AI技术为QT应用程序赋能
c++·人工智能·qt·opencv·qt教程·qt6.3
学习星球8 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
小灰灰搞电子9 小时前
C++ 引用折叠详解
c++
布莱克60510 小时前
数组详解:定义、作用、应用场景及与链表的区别(C/C++ 代码讲解)
c语言·开发语言·c++·数组
牛油果子哥q11 小时前
C++内存池与对象池精讲:内存碎片、自定义分配器、对象池实现、STL allocator原理、工程落地与性能对比
java·开发语言·c++
万法若空11 小时前
C/C++ 类型别名定义方式对比
java·c语言·c++
小小晓.12 小时前
C++ 值类别与完美转发深度剖析:从左值右值到 std::forward 源码解密
开发语言·c++·算法