洛谷题解 P1075 质因数分解

原题传送门

0.前言 今天无意中看到了这道题,就又想做一做(我才不说我为了刷咕值),结果却意外翻车,特此纪念
1.思路
这是一道非常简单的数学题。主要考察的就是唯一分解定理
内容如下:算术基本定理(唯一分解定理)可表述为:任何一个大于1的自然数 N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积。

这提示我们题目中既然保证有解,那解一定是唯一的
2.代码

#include<iostream>
#include<cstdio>
using namespace std;
inline void read(int &x){      //快读
	int f=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){
		if(ch=='-') f=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		x=x*10+ch-'0';
		ch=getchar();
	}
	x*=f;
}
int n;
int main(){
	read(n);
	for(int i=2;i<=n;i++){      //从小到大遍历,第一个输出的一定是小的那个
		if(n%i==0){
			printf("%d",n/i);      //要求输出较大的那个
			return 0;
		}
	}
	return 0;
}
原文地址:https://www.cnblogs.com/-pwl/p/13687339.html