已知两个质数乘积n,求较大的那个质数
生活随笔
收集整理的這篇文章主要介紹了
已知两个质数乘积n,求较大的那个质数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
已知正整數n是兩個不同的質數的乘積,試求出較大的那個質數。
思路
從n-1開始嘗試能不能被n整除,能被整除的就是較大的那個質數。
#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; }但是這樣會超時。
網上的解法是從2開始遍歷到sqrt(n)
這是一種剪枝辦法。
個人感覺 x的范圍n 就可以了,因為反正會提前 break
總結
以上是生活随笔為你收集整理的已知两个质数乘积n,求较大的那个质数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python-scrapy-MongoD
- 下一篇: #HTML5 Web App项目秀#国内