首页 > 其他 > 详细

HDU6256 Master of Phi (狄利克雷卷积、欧拉函数)

时间:2019-04-05 21:11:39      阅读:189      评论:0      收藏:0      [点我收藏+]
UPC5044
#include <iostream>
#include <bits/stdc++.h>

using namespace std;
const int maxn = 1e6 + 100;
const int inf = 0x3f3f3f3f;
const int mod = 998244353;
typedef long long ll;

ll powmod(ll a, ll b) {
    ll ret = 1;
    while (b) {
        if (b & 1) ret = ret * a % mod;
        a = a * a % mod;
        b >>= 1;
    }
    return ret;
}


int main() {
    freopen("input.txt", "r", stdin);
    int _;
    scanf("%d", &_);
    while (_--) {
        int n;
        ll p, q;
        ll ans = 1;
        scanf("%d", &n);
        while (n--) {
            scanf("%lld %lld", &p, &q);
            ll temp = (p + (p - 1) * q) % mod;
            temp = temp * powmod(p, q - 1) % mod;
            ans = ans * temp % mod;
        }
        printf("%lld\n", ans);
    }
    return 0;
}

 

HDU6256 Master of Phi (狄利克雷卷积、欧拉函数)

原文:https://www.cnblogs.com/albert-biu/p/10659894.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!