首页 > 代码库 > QAQ的矩阵价值

QAQ的矩阵价值

#include<cstdio>#include<iostream>#include<cmath>#define mod (int)(1e9+7)using namespace std;int main(){    int t,n;    scanf("%d",&t);    while(t--)    {        scanf("%d",&n);        long long ans1 = (1+n)*n/2,ans2 = 1,ans3 = (1+n)*n/2;        long long a1,a2,a3;        int i,j;        for(i = 1;i < n;i++)        {            a1 = n*(n-i)%mod;            for(j = n-i-1;j > 0;j--)                a1 -= j;            a1 = a1*(int)pow(10,i)%mod;            ans1 = (ans1+a1)%mod;        }        for(i = 1;i < n;i++)        {            a2 = (n-i)*(i+1)%mod;            int k = 1;            for(j = i+1;j > 0;j--)            {                if((n-i-k)==0)                    break;                a2 = (a2-(n-i-k))%mod;                k++;            }            a2 = a2*(int)pow(10,i)%mod;            ans2 = (ans2+a2)%mod;        }        for(i = 1;i < n;i++)        {            a3 = (1+n-i)*(n-i)/2%mod;            a3 = a3*(int)pow(10,i)%mod;            ans3 = (ans3+a3)%mod;        }        printf("%lld %lld %lld\n",ans1,ans2,ans3);    }    return 0;}

 

先记录下。。因为还不会逆元。大数无法处理!!!  注意:这个不是AC代码 

QAQ的矩阵价值