4939 尤拉函式 一中數論隨堂練

2022-05-03 15:39:25 字數 1257 閱讀 1686

時間限制: 1 s

空間限制: 1000 kb

題目等級 : 鑽石 diamond

題解輸入乙個數n,輸出小於n且與n互素的整數個數

輸入描述 input description

包含多組資料,n=0時結束

測試資料組數不會很多,不必先打表後輸出

輸出描述 output description

一組資料一行

樣例輸入 sample input

樣例輸出 sample output

資料範圍及提示 data size & hint

1注意細節的優化,否則第九組資料可能超時

分類標籤 tags 點此展開 

暫無標籤

一步步按照老師講的,轉化成**,結果資料卡記憶體。

40分**(mle)

#include#include

using

namespace

std;

#define n 100001

int n,a[n]=;

intmain()

a[i]=j;

}int e=i;

for(i=2;i<=e;i++)

printf(

"%d\n

",(int

)s);

for(int i=1;i<=e;i++) a[i]=0

; }

return0;

}

看題解,優化的**

ac**1:

#include#include

using

namespace

std;

intmain()

for(long

long i=3;i*i<=n;i+=2

) }

if(n>1) ans=ans/n*(n-1

); cout

}return0;

}

ac**2:

#includeint euler_phi(int

p) }

if(p>1

) phi=phi-phi/p;

return

phi;

}int

main()

codevs 4939 尤拉函式

時間限制 1 s 空間限制 1000 kb 題目等級 鑽石 diamon 輸入乙個數n,輸出小於n且與n互素的整數個數 輸入描述 input description 包含多組資料,n 0時結束 測試資料組數不會很多,不必先打表後輸出 輸出描述 output description 一組資料一行 樣例...

尤拉函式(codevs 4939)

題目描述 description 輸入乙個數n,輸出小於n且與n互素的整數個數 輸入描述 input description 包含多組資料,n 0時結束 測試資料組數不會很多,不必先打表後輸出 輸出描述 output description 一組資料一行 樣例輸入 sample input 樣例輸出...

數論 尤拉函式

尤拉函式,用 n 表示 尤拉函式是求小於等於n的數中與n互質的數的數目 求n的尤拉函式時我們可以減去它的所有素數因子以及它的倍數 12 12 2 2 3 素數因子有2 3所以我們減掉2,3的倍數 2的倍數 2,4,6,8,10,12 3的倍數 3,6,9,12 顯然2,3存在重複項6,12 根據容斥...