自測題3 1014.因子個數
題目描述
乙個正整數可以分解成乙個或多個陣列的積。例如36=2*2*3*3,即包含2和3兩個因子。nowcoder最近在研究因子個數的分布規律,現在給出一系列正整數,他希望你開發乙個程式輸出每個正整數的因子個數。
輸入描述:
輸入包括多組資料。
每組資料僅有乙個整數n (2≤n≤100000)。
輸出描述:
對應每個整數,輸出其因子個數,每個結果佔一行。
輸入例子:
30
2620
輸出例子:
3
22
思路:
**1: 遞迴 73ms
#include
#include
using
namespace
std;
int cnt;
bool isprime(int n)
return
true;
}void countfactors(int n, int start)
else
countfactors(n, i+1);
return;}}
}}int main()
return0;}
**2: 迴圈巢狀 112ms
#include
#include
int main()
while(n%i==0)
}if(n != 1 ) //n為質數的情況
sum++;
printf("%d\n",sum);
}
return0;}
**3: 遞迴 超時超時超時!!!!!!!!
#include
#include
#include
using
namespace
std;
vector
arr;//100000以內素數陣列
bool issushu(int n)
}return
true;
}int help(vector
&yinzi, vector
res, int n)else
flag = false;
break;
}res[arr[i]]++;
break;}}
if(!flag)
break;
}int countt = 0;
for(int i=0; i<=n; i++)
return yinzi[n] = countt;
}int main()
printf("%d\n", help(yinzi, res, n));
}return
0;}
PAT 自測2 素數對猜想
讓我們定義 dn 為 dn pn 1 pn,其中 pi 是第i個素數。顯然有 d1 1 且對於n 1有 dn 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 105 請計算不超過n的滿足猜想的素數對的個數。輸入格式 每個測試輸入包含1個測試用例,給出正整數n。輸出格式 ...
PAT 自測2 素數對猜想
自測 2 素數對猜想 20分 讓我們定義dnd n 為 dn pn 1 pnd n p n 1 p n 其中pip i 是第i i個素數。顯然有d1 1d 1 1,且對於n 1 n 1有dnd n 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 105 10 5 請計算...
PAT乙級 有幾個PAT
輸入只有一行,包含乙個字串,長度不超過105,只包含p,a,t三種字母。在一行中輸出給定字串中包含多少個pat。由於結果可能比較大,只輸出對1000000007取餘數的結果。2首先,這個題看完之後有點懵逼,然後仔細分析得出這三點 每個p對應的pat組合數量是a之前p的數量 每個a對應的pat組合數量...