題目鏈結:
題目分析:本題是求解,在小於n的數中有多少lcm值是n,其實就是找小於n的數對,其素因子與n相同並且,素因子個數最大值與n相同,所以這兩個數的組成,對於n的每乙個素因子 ,只需要乙個值等於n的素因子個數,另乙個隨意,設個數為a[i]這樣值為2*(a[i]+1)-1,(最大的值只有一對)。本題是重複的不計數,所以總數要除2.
**如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int k;
long long suv[100500];
const int n=10000100;
long long prime[n/10]=;
int num_prime=0;
bool isnotprime[n]=;
void su(){
for(long i = 2 ; i < n ; i ++){
if(!isnotprime[i])
prime[num_prime++]=i;
for(long j = 0 ; j < num_prime &&i*prime[j]
唯一分解定理 LightOJ 1236
題意 求有多少組 i,j 使 lcm i,j n and i j 1 n 10 14 思路 假設已找到一對 a,b 的lcm n 有a p1 d1 p2 d2 pm dm b p1 e1 p2 e2 pm em 易知max di,ei ci 先考慮有序數對 a,b 由唯一分解定理知,a的每乙個素因數...
2 7 素因子分解 20 分
給定某個正整數 n,求其素因子分解結果,即給出其因式分解表示式 輸入格式 輸入long int範圍內的正整數 n。輸出格式 按給定格式輸出n的素因式分解表示式,即 輸入樣例 1323輸出樣例 1323 3 3 7 2我的 include using namespace std long int n ...
Problem 1075 分解素因子
problem 1075 分解素因子 假設x是乙個正整數,它的值不超過65535 即1輸入的第一行含乙個正整數k 1 k 10 表示測試例的個數,後面緊接著k行,每行對應乙個測試例,包含乙個正整數x。每個測試例對應一行輸出,輸出x的素數乘積表示式,式中的素數從小到大排列,兩個素數之間用 表示乘法。2...