LightOJ 1213 Fantasy of a Summation

来源:互联网 发布:台达plc编程教学视频 编辑:程序博客网 时间:2024/06/05 15:03

思路:观察后可以发现,这段代码计算的就是((a[1]+a[2]+…+a[n])*k*n^(k-1))%mod

#include <iostream>#include <algorithm>using namespace std;typedef long long ll;ll pow(int a, int b, int m){    ll res = 1;    while(b)    {        if(b&1) res = res*a%m;        a = a*a%m;        b >>= 1;    }    return res;}int main(){    int t,time = 0;    ll n,k,mod;    ll sum,num,n2;    cin >> t;    while(t--)    {        sum = 0;        cin >> n >> k >> mod;        for(int i = 0; i < n; ++i)        {            cin >> num;            sum = (sum+num)%mod;        }        n2 = pow(n,k-1,mod);        n2 = n2*k%mod;        cout << "Case " << ++time << ": " << sum*n2%mod <<endl;    }    return 0;}
0 0
原创粉丝点击