1. 程式人生 > 實用技巧 >洛谷題解 P1075 質因數分解

洛谷題解 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;
}