根據指數的質數分解進行容斥 比如 k = a^3 且 k = b ^ 5,那麼 k = c ^ 15
所以 a 的可選個數 加 b的可選個數減去c的可減個數就是總的個數了因為 a^3和b^5有重複的
#include
#include
#include
#include
#include
#include
#define ll long long
using
namespace
std;
int x[50] = ;
ll ans = 0, n;
void dfs(int pre, int index, int am)
}for(int i = index; x[i] < 61; i++)
dfs(pre * x[i], i + 1, am + 1);
}int main()
return
0;}
HDU 2204 Eddy s愛好 容斥
ignatius 喜歡收集蝴蝶標本和郵票,但是eddy的愛好很特別,他對數字比較感興趣,他曾經一度沉迷於素數,而現在他對於一些新的特殊數比較有興趣。這些特殊數是這樣的 這些數都能表示成m k,m和k是正整數且k 1。正當他再度沉迷的時候,他發現不知道什麼時候才能知道這樣的數字的數量,因此他又求助於你...
HDU 2204 Eddy s愛好 容斥
input 本題有多組測試資料,每組包含乙個整數n,1 n 1000000000000000000 10 18 output 對於每組輸入,請輸出在在1到n之間形式如m k的數的總數。每組輸出佔一行。sample input 10 361000000000000000000sample output...
hdu2204 Eddy s愛好(容斥)
題意 給定n,問有多少個p m k,滿足p n 要求m 1,k 1 資料範圍 n 1e18 解法 顯然列舉m肯定不行,因為m 2 1e18 那麼m 1e9,考慮列舉k,2 60 1e18 因此列舉k最多列舉60個,如果k是乙個合數,那麼k可以拆分為乙個數與質數的乘積 k x p,那麼m k可以變為m...