90分。。测试点二过不去求各位大大佬调调
查看原帖
90分。。测试点二过不去求各位大大佬调调
1122305
lanxuanfeng楼主2024/1/14 12:58
 #include <stdio.h>
#include <stdlib.h>
#include<string.h>
#include<math.h>
int arr[20][100000];
int main()
{
    int t;
    scanf("%d", &t);
    int a, b;
    for (int i = 0; i < t; i++)
    {
        arr[i][1] = 1;
    }
    for (int i = 0; i < t; i++)
    {
        scanf("%d %d", &a, &b);
        int len = 1;
        for (int j = 2; j <= a; j++)
        {
            for (int k = 1; k <= len+10; k++)
            {
                arr[i][k] *= j;
            }
            for (int k = 1; k <= len+10; k++)
            {
                arr[i][k + 1] += arr[i][k] / 10;
                arr[i][k] %= 10;
            }
            while(arr[i][len + 1])
                len++;
        }
        int count = 0;
        for (int k = len; k >= 1; k--)
        {
            if (arr[i][k] == b)
            {
                count++;
            }
        }
        printf("%d\n", count);
    }
    return 0;
}
2024/1/14 12:58
加载中...