已知两个质数乘积n,求较大的那个质数
生活随笔
收集整理的這篇文章主要介紹了
已知两个质数乘积n,求较大的那个质数
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目描述
已知正整數(shù)n是兩個(gè)不同的質(zhì)數(shù)的乘積,試求出較大的那個(gè)質(zhì)數(shù)。
思路
從n-1開始嘗試能不能被n整除,能被整除的就是較大的那個(gè)質(zhì)數(shù)。
#include<iostream> using namespace std; int main() {long long int n;cin>>n;for(long long int x=n-1;x>1;x--){if(n%x==0){cout<<x<<endl;break;}}return 0; }但是這樣會(huì)超時(shí)。
網(wǎng)上的解法是從2開始遍歷到sqrt(n)
這是一種剪枝辦法。
個(gè)人感覺 x的范圍n 就可以了,因?yàn)榉凑龝?huì)提前 break
總結(jié)
以上是生活随笔為你收集整理的已知两个质数乘积n,求较大的那个质数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python-scrapy-MongoD
- 下一篇: #HTML5 Web App项目秀#国内