P1591 阶乘数码 【高精】

2023-05-16

题目描述

求 n!n!n! 中某个数码出现的次数。
输入格式

第一行为 t(t≤10)t(t \leq 10)t(t≤10),表示数据组数。接下来 ttt 行,每行一个正整数 n(n≤1000)n(n \leq 1000)n(n≤1000) 和数码 aaa。
输出格式

对于每组数据,输出一个整数,表示 n!n!n! 中 aaa 出现的次数。
输入输出样例
输入 #1

2
5 2
7 0

输出 #1

1
2

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
using namespace std;

const int maxn = 1e5 + 10;
int n, k;

struct bign{
	int len;
	int d[maxn];
	bign() {
		len = 0;
		memset(d, 0, sizeof(d));
	}
};

bign mul(bign a, int b) {
	int carry = 0;
	bign res;
	for(int i = 0; i < a.len; i++) {
		int tem = a.d[i] * b + carry;
		res.d[res.len++] = tem % 10;
		carry = tem / 10;
	}
	while(carry) {
		res.d[res.len++] = carry % 10;
		carry /= 10;
	}
	while(res.len > 1 && res.d[res.len - 1] == 0)	res.len--;
	return res;
}

void solve() {
	cin >> n >> k;
	bign res;
	res.len = 1;
	res.d[0] = 1;
//	res = mul(res, 23);
	for(int i = 1; i <= n; i++) {
		res = mul(res, i); 
	}
	int ans = 0;
	for(int i = 0; i < res.len; i++) {
	//	cout << res.d[i];
		if(res.d[i] == k)
			ans++;
	}
	cout << ans << endl;
}

int main() {
	int t;
	cin >> t;
	while(t--)
		solve();
	return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

P1591 阶乘数码 【高精】 的相关文章

  • KEIL中查看程序的存储空间的大小

    Program Size Code 61 86496 RO data 61 9064 RW data 61 1452 ZI data 61 16116 Code是代码占用的空间 xff0c RO data是 Read Only 只读常量的大
  • Mysql安装教程5.7(理论通用)

    1 首先在官网下载 mysql 地址 2 下载完成解压 默认在 C Program Files MYsQL 我下面统一使用该地址 想安装到 D 盘就提前建个文件夹命名为 MYSQL 解压进去 3 在MYSQL安装目录下 xff08 C Pr
  • Debia安装和配置dns服务

    首先下载dns服务 接着查看本机的ip地址 xff08 本机为172 16 100 201 之后统一为此ip xff09 设置本地的主服务器地址 xff0c 本机即是主服务器 xff0c 如在其他设备上在这里将namserver修改成其他设
  • Debian安装和配置chrony服务器

    首先准备两台或者两台以上debain进行配置 服务器 apt install chhrony nano etc chrony chhrony conf 添加以下内容 server 172 16 100 201 iburst 此处是chron
  • 锂电池充电(TP4056A芯片)电路分享

    描述 xff08 资料来源文档 特点 封装 引脚功能 应用电路分享 检测电池温度 xff0c 电池温度异常指示和充电状态指示应用 适合需要充电状态指示 xff0c 但不监测温度 xff08 左边 xff09 xff0c 既不需要充电状态提示
  • 利用snapper实现archlinux的系统还原

    首先 xff0c 安装snapper和btrfs progs pacman S snapper btrfs progs 创建配置文件 snapper c cfg home create config f btrfs home snapper
  • --secure-file-priv为Null且修改无效问题

    试过很多方法 xff0c 发现修改无效的根本原因是我的my ini在data文件夹中 xff0c 应该放在有效文件夹里 在命令行输入 mysql help 发现有这样一行 它的意思是c盘或者D Program Files MySQL mys
  • 在python利用代码进行简单的数学运算

    在这里我们会简单说一下在python中用代码进行数学运算 python的运算顺序 和数学里是一样的 xff1a 加减乘除 xff0c 在键盘上加减符号都有 xff0c 而乘除我们用星号 和正斜杠 表示 xff0c 次方用 表示 比如2的三次
  • Linuxshell脚本之菜单以及函数

    目录 一 菜单 1 查看菜单格式 2 简单菜单小脚本 二 函数 1 作用 2 基本格式 3 查看函数 4 删除函数 5 函数的返回值 6 函数的传参数 7 函数变量的作用范围 8 递归 三 数组 1 定义数组格式 2 数组类型包括 四 总结
  • ECS基本概念 一

    基本概念 ECS xff08 Entity Component System xff09 由三部分组成 Entity 是一个id xff0c 目的是将Component逻辑地分组在一起 xff0c 在源码中是一个结构体 xff0c 包含一个
  • cas开发遇到bug总结

    1 keytool工具java io IOException Keystore was tampered with or password was incorrect 原因有两种 xff1a 1 密码被修改过了 xff0c 所以证书无法通过

随机推荐

  • 【Unity游戏开发】SDK接入与集成——小白入门篇

    阅读目录 一 简介二 浅谈常用的两种接入方案三 开始接入 xff01 Unity与Android的交互四 结语 回到顶部 一 简介 通常一款游戏开发到后期 xff0c 一般都会涉及到第三方SDK的接入与集成 xff0c 对于不熟悉SDK接入
  • Unity 音频从某一时间开始播放

    最近在做一个音乐类的项目 xff0c 遇到了音乐追帧问题 xff0c 记录一下 挺简单的一个问题 xff0c 在百度上搜了好久 xff0c 然后跟着看到的唯一一篇博客试了试 xff0c xff08 当时还以为终于找到了 xff09 xff0
  • GameFramework框架解读(AB打包、加载、热更流程 基于《Star Force》Demo)

    目录 1 单机模式 xff08 1 xff09 先打包进行设置 xff1a xff08 2 xff09 Start Build Resources 得到文件 2 热更 流程 xff08 1 xff09 修改第一步中的Resource 如图
  • Unity 改变物体顶点色

    扩展方法 xff1a Mesh的部分信息展示 xff1a Mesh挂上顶点采样shader xff1a
  • java对字符串数组进行排序

    import java util Arrays import java util Random public class Arrays o3 public static void main String args 自定义字符串 String
  • 判断某一点是否在包围盒内:Bounds.Contains

    蒙皮网格获取方法 xff1a SkinnedMeshRenderer xff1a m Bounds 61 colliderTran GetComponent lt SkinnedMeshRenderer gt sharedMesh boun
  • 关于协程记录一下

    void Start Print 61 Prints private IEnumerator Print void Update if Input GetKeyDown KeyCode S StartCoroutine Print if I
  • Android 10 安装兼容

    android exported 61 true
  • Unity 查Crash

    首先获得堆栈信息 xff0c AS 然后找Unity的NDK目录下的arm linux androideabi addr2line xff08 对应arm v7 xff09 xff0c 或者aarch64 linux android add
  • Unity TextMeshPro 毛边问题

    如图所示 xff1a 边缘像素透明度拉高了 结果是因为开了主相机的Post Processing 加低级抗锯齿 xff08 FXAA xff09 导致的 如图 xff1a 关闭Post Processing 或者关闭抗锯齿可解决 也可采用高
  • UnityWebRequest 本地读StreamingAssets写入persistentDataPath(坑啊)

    下文为自己以前写的 博客 xff0c 可谓打脸啊 xff08 知其然不知其所以然 xff09 以下为 Android 环境 本地读写数据 xff08 踩的坑 xff09 xff1a UnityWebRequest 加载本地文件的时候需要加
  • Application.logMessageReceived

    监听Unity的打印事件 xff0c 如常规打印 xff0c 报错等等 如下代码为自制的打印日志 xff1a List lt string gt mWriteTxt 61 new List lt string gt void OnEnabl
  • Unity编辑器篇(一)Scene界面

    xff08 一 xff09 xff0c 向屏幕中心发射一条射线 lastActiveSceneView 类似于 Game场景的相机 xff0c xff08 其实我也没搞懂是什么东西 xff09 Ray ray 61 SceneView la
  • 计蒜客-炮台实验

    蒜头君在玩一个战争模拟游戏 xff0c 他有高度为 1 2 3 ldots n1 2 3 n 的炮台各一个 xff0c 他需要把这 nn个炮台从左往右排成一行 xff0c 并且炮口都朝向右边 在这个游戏中 xff0c 所有炮台发射的炮弹会摧
  • Dockerfile详解超全

    Dockerfile详解 环境介绍指令介绍FROMMAINTAINERLABELADDCOPYEXPOSEENV在Dockerfile中使用变量的方式 RUNCMDRUN amp amp CMDENTRYPOINTVOLUMEUSERWOR
  • Debian8 修改root密码

    1 当系统启动进入GNU GRUB界面 xff0c 按esc停留在此页面 xff0c 按上下的方向键可以进行选择 2 选中要修改的系统 xff0c 按e进入编辑状态 xff0c 在linux开头的这一行末尾加上 init 61 bin ba
  • debian10 配置ntp服务

    debian10 配置ntp服务 1 安装ntp2 配置3 验证 服务器不能连外网 xff0c 内网中有一台授时服务器 xff0c 内网也搭建了debian10的本地镜像源 1 安装ntp apt install ntp 2 配置 sudo
  • STL priority_queue使用

    转自 xff1a http www cnblogs com lvpengms archive 2010 04 05 1704669 html 包含priority queue 的头文件是 lt queue gt priority queue
  • GNU 简单介绍(含glibc 源码下载)

    GNU是什么 xff1f 先放网址 xff1a https www gnu org GNU是一个自由软件操作系统 就是说 xff0c 它尊重其使用者的自由 GNU操作系统包括GNU软件包 xff08 专门由GNU工程发布的程序 xff09
  • P1591 阶乘数码 【高精】

    题目描述 求 n n n 中某个数码出现的次数 输入格式 第一行为 t t 10 t t leq 10 t t 10 xff0c 表示数据组数 接下来 ttt 行 xff0c 每行一个正整数 n n 1000 n n leq 1000 n