{"provider_url":"https://hatena.blog","description":"\u7d2f\u4e57\u3063\u3066\uff0c\u3044\u307e\u307e\u3067\uff0c inline void pow(int a[N], long long n) { if (n == 1) { return; } else if (n%2) { int b[N]; REP (i, N) b[i] = a[i]; pow(b, n-1), mul(a, b); } else { mul(a, a), pow(a, n/2); } } \u3053\u3093\u306a\uff0c\u3075\u3046\u306b\u66f8\u3044\u3066\u3044\u305f\uff0e \uff08\u914d\u5217\u3092\u7d2f\u4e57\u3057\u3066\u3044\u308b\u306e\u306f\u5927\u4eba\u306e\u4e8b\u60c5\u3067\u3059\uff0e\uff09 \u3057\u304b\u3057\uff0c\u5b9f\u306f\uff0c\u5225\u306e\u66f8\u304d\u304b\u305f\u3082\u3042\u3063\u305f\uff0e // initialize b = 1\uff1b while (n>1) { if (n%2) mul(b, a); mul\u2026","version":"1.0","author_url":"https://blog.hatena.ne.jp/jeneshicc/","published":"2009-10-08 21:37:34","author_name":"jeneshicc","width":"100%","height":"190","title":"powering","blog_url":"https://jeneshicc.hatenadiary.org/","blog_title":"\u843d\u66f8\u304d\u3001\u6642\u3005\u843d\u5b66","image_url":null,"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fjeneshicc.hatenadiary.org%2Fentry%2F20091008%2F1255005454\" title=\"powering - \u843d\u66f8\u304d\u3001\u6642\u3005\u843d\u5b66\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","type":"rich","provider_name":"Hatena Blog","url":"https://jeneshicc.hatenadiary.org/entry/20091008/1255005454","categories":["C++"]}