Poj 3090 & amp; poj 2478 (farei series, Euler's function)
The recurrence formula of the faray series is very simple: f [1] = 2; f [I] = f [I-1] + phi [I].
This is the deformation of the farei series. The answer is 2 * f [I]-1.
# Include
# Include
# Include
# Include
# Include
# Include
# Include
# Include
# Include
# Include
# Include
# Include # define LL long # define _ LL _ int64 # define eps 1e-12 # define PI acos (-1.0) using namespace std; const int maxn = 1100; int flag [maxn]; int prime [maxn]; int phi [maxn]; LL f [maxn]; void init () {memset (flag, 0, sizeof (flag); prime [0] = 0; phi [1] = 1; for (int I = 2; I <maxn; I ++) {if (flag [I] = 0) {phi [I] = I-1; prime [++ prime [0] = I;} for (int j = 1; j <= prime [0] & prime [j] * I
Http://poj.org/problem? Id = 2478
It is simpler to directly calculate the repeat series. Euler's Function Based on prime screening.
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include #define LL long long#define _LL __int64#define eps 1e-12#define PI acos(-1.0)using namespace std;const int maxn = 1000010;int flag[maxn];int prime[maxn];int phi[maxn];LL f[maxn];void init(){memset(flag,0,sizeof(flag));prime[0] = 0;phi[1] = 1;for(int i = 2; i < maxn; i++){if(flag[i] == 0){phi[i] = i-1;prime[++prime[0]] = i;}for(int j = 1; j <= prime[0]&&prime[j]*i