当p为素数时,原根=
代码:
#include <set>
#include <cmath>
#include <queue>
#include <stack>
#include <vector>
#include <string>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <functional>
#define PI acos(-1)
typedef long long ll;
using namespace std;
const int INF = 0x3f3f3f3f;
void solve(ll n)
{
ll t=n;
for(ll i=2;i*i<=n;i++)
{
if(n%i==0)
{
t=t-t/i;
while(n%i==0)n=n/i;
}
}
if(n!=1)t=t-t/n;
printf("%lld\n",t);
}
int main()
{
ll n;
while(~scanf("%lld",&n))
{
solve(n-1);
}
}