時間限制:
1000 ms | 記憶體限制:
65535 kb
難度: 2
描述 greyants最近正在學習數論中的素數,但是現在他遇到了乙個難題:給定乙個整數n,要求我們求出n的最大素因子的序數,例如:2的序數是1,3的序數是2,5的序數是3,以此類推. 研究數論是需要很大的耐心的,為了懲罰那些沒有耐心讀完題目的童鞋,我們規定:1的最大素因子序數是0.
輸入
有多組測試資料,每一行輸入乙個數字n.(0輸出
在接下來的一行,輸出結果.
樣例輸入
2345
樣例輸出
1213
思路:按照普通篩素數的方法,只不過prime陣列儲存的不再是素數,而是i的最大素因子數,素數的倍數的最大素因子為此素數,素數的最大素因子為其本身。
ac**:
#include#include#include#include#include#define maxn 1000010
#define max(a,b) a>b?a:b
#define fab(a) ((a)>0?(a):-(a))
#define mem(x) memset(x,0,sizeof(x))
#define ll long long
#define inf 0xfffffff
using namespace std;
int prime[maxn];
int v[maxn];
void db()
{ mem(v);
int i,j;
int k=0;
prime[1]=k;
k++;
for(i=2;i
NYOJ 520 最大素因子 快速線性篩法的變形
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 greyants最近正在學習數論中的素數,但是現在他遇到了乙個難題 給定乙個整數n,要求我們求出n的最大素因子的序數,例如 2的序數是1,3的序數是2,5的序數是3,以此類推.研究數論是需要很大的耐心的,為了懲罰那些沒有耐心讀完...
NYOJ 520 解題報告
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 greyants最近正在學習數論中的素數,但是現在他遇到了乙個難題 給定乙個整數n,要求我們求出n的最大素因子的序數,例如 2的序數是1,3的序數是2,5的序數是3,以此類推.研究數論是需要很大的耐心的,為了懲罰那些沒有耐心讀完...
nyoj 最大素因子 520 (反著素數打表)
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 greyants最近正在學習數論中的素數,但是現在他遇到了乙個難題 給定乙個整數n,要求我們求出n的最大素因子的序數,例如 2的序數是1,3的序數是2,5的序數是3,以此類推.研究數論是需要很大的耐心的,為了懲罰那些沒有耐心讀完...