• [BZOJ2757] [SCOI2012]Blinker的仰慕者


    [BZOJ2757] [SCOI2012]Blinker的仰慕者

    Description

    Blinker 有非常多的仰慕者,他给每个仰慕者一个正整数编号。而且这些编号还隐藏着特殊的意义,即编号的各位数字之积表示这名仰慕者对Blinker的重要度。 现在Blinker想知道编号介于某两个值A,B之间,且重要度为某个定值K的仰慕者编号和。

    Input

    输入的第一行是一个整数N,表示Blinker想知道的信息个数。
    接下来的N行,每行有三个数,A,B,K。表示 Blinker想知道编号介于A和B之间的,重要度为K的仰慕者的编号和。

    Output

    输出N行,每行输出介于A和B之间,重要度为 K的仰慕者编号和。结果可能很大,模上20120427。

    Sample Input

    3
    1 14 4
    1 30 4
    10 60 5
    0<=K<=10^18

    Sample Output

    18
    40
    66
    【样例解释】
    第一组样例中,在 1到14之间各位数字之积等于 4的有 4和 14,故编号和为18。

    HINT

    【数据范围】
    对于20%的数据,保证: 2<=A<=B<=1000000000,1<=N<=30
    对于50%的数据,保证:2<=A<=B<=1000000000000000000,1<=N<=30
    对于100%的数据,保证: 2<=A<=B<=1000000000000000000,1<=N<=5000

    试题分析

    十分优秀地通过这道题知道了数位dp可以不计录当前数字。。。
    方法非常simple,就是发现合法乘积的个数很小,所以直接预处理压下来。
    然后(f_{i,j})表示乘积为i,j位的数的个数,(s_{i,j})表示总和。
    注意特判0的情况。

    代码丢失。。。

  • 相关阅读:
    centos7修改网卡名称
    xtrabackup备份恢复过程
    centos 设置删除提示
    cetos6 安装samba共享文件夹
    centos 安装cacti监控
    centos6 搭建hdwiki
    centos6.8安装superctl 后台管理工具
    centos6.5 安装ansible,管理多台服务器
    CreateParams作用及重写
    c# 获取当前应用程序的路径
  • 原文地址:https://www.cnblogs.com/wxjor/p/9521844.html
Copyright © 2020-2023  润新知