1,2,3过不了

P1591 阶乘数码

as13249320351 @ 2022-04-01 16:41:30


#include <iostream>
#include<cstdlib>
using namespace std;
int a[100000]={0};
int main()
{
    int n;
    int t[11][2]={0};
    int sum[11]={0};
    int i,j,k=0,y;
    int up=0;
    cin>>n;
    for(i=0;i<n;i++)
    {
        for(j=0;j<2;j++)
        {
            cin>>t[i][j];
        }
    }
    while(y<=n)
    {
        a[0]=1;
        for(i=1;i<=t[y][0];i++)
        {
            for(j=0;j<=k;j++)
            {
                a[j]=a[j]*i+up;
                up=a[j]/10;
                a[j]%=10;
            }
            while(up>0)
            {
                a[k+1]=up%10;
                up/=10;
                k++;
            }
        }
        for(i=k;i>=0;i--)
        {
            if(a[i]==t[y][1])
            {
                sum[y]++;
            }
            a[i]=0;
        }
        y++;
    }
    for(i=0;i<n;i++)
    {
        cout<<sum[i]<<endl;
    }
    return 0;
}

|