HDU 2204 Eddy s愛好(容斥原理)

2022-05-18 12:05:13 字數 793 閱讀 6853

解題報告:輸入乙個n讓你求出[1,n]範圍內有多少個數可以表示成形如m^k的樣子。

不詳細說了,自己一開始也忽略了三個素數的乘積的乘方的情況。

1 #include2 #include3 #include4 #include5 #include6

using

namespace

std;

7 typedef long

long

int;

8 int prim[70];9

10int

dabiao()

1123

if(flag) prim[f++] =i;24}

25return

f;26}27

28int

calc(int a,int b,int n)

2936

return1;

37}38int

main()

3951

for(int i = 0;i < num;++i)

52for(int j = i+1;j < num;++j)

5358

for(int i = 0;i < num;++i)

59for(int j = i + 1;j < num;++j)

60for(int k = j + 1;k < num;++k)

6166 printf("

%i64d\n

",tot);67}

68return0;

69 }

view code

hdu 2204 Eddy s愛好 容斥

根據指數的質數分解進行容斥 比如 k a 3 且 k b 5,那麼 k c 15 所以 a 的可選個數 加 b的可選個數減去c的可減個數就是總的個數了因為 a 3和b 5有重複的 include include include include include include define ll lo...

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...