問題描述如下:
「13195的質因數(或者叫素因子,素因素)為5,7,13和29,求600851475143的最大質因數是多少?」
這裡質因數的概念就不贅述了。
給出**如下:
private static long getthelargestprimefactor(long n)
}} return returnfactor;
}
可以得出答案6857。
判斷的條件是不是可以有所變化呢,我們知道乙個數的質因數不能大過乙個數的平方根,將設乙個數為n,其任何質因數primefactor <= n的平方根。
那就可以將判斷條件修改,如下:
private static long getthelargestprimefactor1(long n)
}} return returnfactor;
}
另外,是不是還有一些其他的方面有所改進呢?
我們考慮到2是所有質因數中唯一的偶數,可以在此方面下功夫,不說什麼了,貼**:
private static long getthelargestprimefactor2(long n)
} else
for (; factor <= largestfactor; factor += 2)
}} return returnfactor;
}
到此結束,請不吝賜教!
@anthor clumsybirdz
問題3 600851475143的最大質因數
問題描述如下 13195的質因數 或者叫素因子,素因素 為5,7,13和29,求600851475143的最大質因數是多少?這裡質因數的概念就不贅述了。給出 如下 private static long getthelargestprimefactor long n return returnfac...
P問題,NP問題,NPC問題,NP hard問題
1.p問題 乙個問題能找到乙個在多項式時間裡解決他的演算法 2.np問題 在多項式時間找不到問題的解,但可在多項式時間驗證問題的解 所有p問題都是np問題 3.npc問題 存在乙個np問題,所有其他np問題都可以約化為它 是乙個np問題 所有np問題都可約化為它 一元二次方程可以約化一元一次方程 一...
問題 I n皇后問題
在n n 格的棋盤上放置彼此不受攻擊的n 個皇后。按照西洋棋的規則,皇后可以攻擊與之處在同一行或同一列或同一斜線上的棋子。n後問題等價於在n n格的棋盤上放置n個皇后,任何2 個皇后不放在同一行或同一列或同一斜線上。設計乙個解n 後問題的佇列式分支限界法,計算在n n個方格上放置彼此不受攻擊的n個皇...