HDU-2017 多校训练赛3-1008-RXD and math
2017-08-01 19:28
591 查看
ACM模版
![](http://img.blog.csdn.net/20170801192119937?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZl96eWo=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
后来看看样例,感觉和 MOD 十分接近,而 1010 刚好约为 MOD 的近十倍,所以强行猜一波,直接快速幂求 nk,然后提交了一发,WA,发现忘了输出格式,再提交 AC 了……运气还可以。
官方题解是这样婶儿的……
![](http://img.blog.csdn.net/20170801192733662?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZl96eWo=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
描述
题解
拿到这个题开始分析,首先莫比乌斯函数平方后就全部是 0 和 1,然后,就没有然后了,我分析不下去了……后来看看样例,感觉和 MOD 十分接近,而 1010 刚好约为 MOD 的近十倍,所以强行猜一波,直接快速幂求 nk,然后提交了一发,WA,发现忘了输出格式,再提交 AC 了……运气还可以。
官方题解是这样婶儿的……
代码
#include <iostream> #include <cstdio> using namespace std; typedef long long ll; const int MOD = 1e9 + 7; ll n, k; ll QPow(ll x, ll n) { ll ret = 1; ll tmp = x % MOD; while (n) { if (n & 1) { ret = (ret * tmp) % MOD; } tmp = tmp * tmp % MOD; n >>= 1; } return ret; } int main(int argc, const char * argv[]) { int ce = 1; while (~scanf("%lld%lld", &n, &k)) { printf("Case #%d: %lld\n", ce++, QPow(n, k)); } return 0; }
相关文章推荐
- (2017多校训练第三场)HDU - 6063 RXD and math 找规律 + 快速幂
- 17 多校 3 - 1008 - RXD and math(HDU 6063)
- HDU-2017 多校训练赛3-1005-RXD and dividing
- 2017 多校训练第三场 HDU 6063 RXD and math
- 2017 多校3 1008 RXD and math
- HDU 6063 RXD and math+(快速幂)+多校联赛第三场
- H - RXD and math HDU - 6063 多校第三场
- 多校3 HDU - 6063 RXD and math 数学
- HDU-2017 多校训练赛5-1008-Rikka with Subset
- 2017 Multi-University Training Contest - Team 3 1008 RXD and math
- HDU-2017 多校训练赛9-1008-Numbers
- HDU6063---RXD and math(2017多校联赛题目(???))
- HDU 2017 多校联合训练赛8 1008 6140 Hybrid Crystals
- HDU6063 [2017多校联合3] RXD and math 打表 快速幂
- HDU 2017 多校联合训练赛6 1008 6103 Kirinriki 优美的暴力
- HDU-2017 多校训练赛7-1008-Hard challenge
- 2017 Multi-University Training Contest 3 solutions 1008 RXD and math
- 2017 多校3 hdu 6061 RXD and functions
- HDU 2017 多校联合训练赛7 1008 6127 Hard challenge (重载运算符)
- HDU-2017 多校训练赛8-1008-Hybrid Crystals