D32次 第2题 因子化简

这道题前几天刚做过,这次再做一下,看看能不能做对

5416. 因子化简 - AcWing题库

思路:

1.因子p 遍历确认,遍历到;2.指数通过循环不断相除累加确认**【从2开始循环】**。

代码:

cpp 复制代码
	//因子化简
	int q;
	cin>>q;
	while(q--){
		long long n,k;
		cin>>n>>k;
		long long  ans=1;
		long long tmp=n;
		for(int i=2;i*i<=tmp;i++){//遍历找p
			int t=0;
			while(tmp%i==0){
				t++;
				tmp/=i;
			} 
			if(t>=k){
				 ans *= pow(i, t);
			}	
		}
		// 处理最后剩余的大质因子(比如n=15,分解完3后剩5)
        if (tmp> 1) { // 剩余的temp_n是质因子
            int t = 1;
            if (t >= k) {
                ans *= pow(tmp, t);
            }
        }
		cout<<ans<<endl;
	}

反思:这道题用的pow()函数,大数据可能会超出时间限制,要自定义函数,这里就不定义了。

这次写的时候,忘记了i需要从2开始遍历 ,还有// 处理最后剩余的大质因子

相关推荐
大可不必了3 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus3 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道4 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛4 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
Rabitebla4 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
eggwyw6 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
码客-ygluu10 小时前
一个通用游戏数据服务器
c++·架构
another heaven10 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++
SomeOtherTime11 小时前
Rust 闭包语法和原理(AI回答)
开发语言·后端·rust
apcipot_rain12 小时前
C++转Java日记(10)
java·开发语言