bzoj 3884 上帝與集合的正確用法

2021-08-24 23:30:08 字數 795 閱讀 3092

直接利用降冪公式(或者有人叫擴充套件尤拉定理?),由降冪公式:

那麼我們可以對這個式子降冪:

發現指數部分仍然是原表示式的形式,所以我們遞迴處理:

記f(p)=2^2^2^2^2... mod p

於是根據上述分析可得:

f(p)=2^(f(φ(p)+φ(p)) mod p

於是我們不斷遞迴至φ(p)=1,此時f(φ(p))=0為止即可

#include #include #include #include #include #include #include #include #define maxn 10000005

#define maxn 10000000

#define ll long long

using namespace std;

int prime[6000000];

bool used[maxn];

int phi[maxn];

int cnt=0;

void eular()

for(int j=1;j<=cnt&&i*prime[j]<=maxn;j++)

else}}

}ll pow(ll x,ll y,ll mod)

y/=2;

x=x*x%mod;

}return ans%mod;

}ll f(ll c)

return pow(2,f(phi[c])+phi[c],c)%c;

}int main()

return 0;

}

BZOJ 3884 上帝與集合的正確用法

description 根據一些書上的記載,上帝的一次失敗的創世經歷是這樣的 第一天,上帝創造了乙個世界的基本元素,稱做 元 第二天,上帝創造了乙個新的元素,稱作 被定義為 元 構成的集合。容易發現,一共有兩種不同的 第三天,上帝又創造了乙個新的元素,稱作 被定義為 構成的集合。容易發現,一共有四種...

BZOJ 3884 上帝與集合的正確用法

根據一些書上的記載,上帝的一次失敗的創世經歷是這樣的 第一天,上帝創造了乙個世界的基本元素,稱做 元 第二天,上帝創造了乙個新的元素,稱作 被定義為 元 構成的集合。容易發現,一共有兩種不同的 第三天,上帝又創造了乙個新的元素,稱作 被定義為 構成的集合。容易發現,一共有四種不同的 第四天,上帝創造...

Bzoj3884 上帝與集合的正確用法

求2 2222 22.mod p的值。po姐的題目誒 大 意就是上 面那樣,看上去 個2根 本不可做 不過有 尤拉定理 xa x amod p p mo dp 那麼我們有f n 2 2222 22.mo dn 2 2 2222 2.mod n n mo dn 2f n n m odn 遞迴做下去即可...