数字游戏13524_数位计数器

数字游戏13524_数位计数器由于科协里最近真的很流行数字游戏。某人又命名了一种取模数,这种数字必须满足各位数字之和 mod N 为 0。现在大家又要玩游戏了,指定一个整数闭区间 [a.b],问这个区间内有多少个取模数。输入格式输入包含多组测试数据,每组数据占一行。每组数据包含三个整数 a,b,N。输出格式对于每个测试数据输出一行结果,表示区间内各位数字和 mod N 为 0 的数的个数。数据范围1≤a,b≤231−1,1≤N<100输入样例:1 19 9输出样例:2#include<bits

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

由于科协里最近真的很流行数字游戏。

某人又命名了一种取模数,这种数字必须满足各位数字之和 mod N 为 0。

现在大家又要玩游戏了,指定一个整数闭区间 [a.b],问这个区间内有多少个取模数。

输入格式
输入包含多组测试数据,每组数据占一行。

每组数据包含三个整数 a,b,N。

输出格式
对于每个测试数据输出一行结果,表示区间内各位数字和 mod N 为 0 的数的个数。

数据范围
1≤a,b≤231−1,
1≤N<100

输入样例:
1 19 9
输出样例:
2
#include<bits/stdc++.h>
using namespace std;
const int N = 11;
const int MOD = 100;
int f[N][10][MOD];
int mo,l,r;
int mod(int x,int y){ 
   
    return (x % y + y) % y;
}
void init(){ 
   
    memset(f,0,sizeof f);
    for(int i = 0;i < 10;i ++){ 
   
        for(int j = 0;j < MOD;j ++){ 
   
            if(mod(i,mo) == j)f[1][i][j] ++;
        }
    }
    for(int i = 2;i < N;i ++){ 
   
        for(int j = 0;j < 10;j ++){ 
   
            for(int k = 0;k < MOD;k ++){ 
   
                for(int z = 0;z < 10;z ++){ 
   
                    f[i][j][k] += (f[i - 1][z][mod(k - j,mo)]);
                }
            }
        }
    }
}
int dp(int n){ 
   
    if(!n)return 1;
    vector<int>nums;
    while(n)nums.push_back(n % 10),n /= 10;
    
    int res = 0,last = 0;
    for(int i = nums.size() - 1;i >= 0;i --){ 
   
        int x = nums[i];
        for(int j = 0;j < x;j ++)res += f[i + 1][j][mod(last,mo)];
        last = mod(last - x,mo);
        if(!i && !last)res ++;
    }
    
    return res;
}
int main(){ 
   
    while(cin>>l>>r>>mo){ 
   
        if(l > r)swap(l,r);
        init();
        cout<<(dp(r) - dp(l - 1))<<endl;
    }
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168581.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AVX512与AVX2比较「建议收藏」

    AVX512与AVX2比较「建议收藏」采用,SHA256(SHA256哈希计算是有效负载处理管道的重要部分)优点:1、寄存器变化(与AVX2相比,不仅寄存器的宽度从256位增加到512位,而且寄存器的数量也增加了一倍,达到32)2、比AVX2提供高达8倍的性能提升,由于并行处理了16条消息如何最好地利用为了获得AVX512实现的最佳性能,这里有一些提示:有很多例行程序并行进行SHA256计算。 尝试使用…

    2022年5月30日
    73
  • 字符串转换系列三:VARIANT、COleVariant 和_variant_t

    字符串转换系列三:VARIANT、COleVariant 和_variant_tVARIANT、COleVariant和_variant_t  在OLE、ActiveX和COM中,VARIANT数据类型提供了一种非常有效的机制,由于它既包含了数据本身,也包含了数据的类型,因而它可以实现各种不同的自动化数据的传输。下面让我们来看看OAIDL.H文件中VARIANT定义的一个简化版:structtagVARIANT{ VARTYPEvt; 

    2022年7月18日
    17
  • mysql 导入 csv 大文件怎么打开_mysql导入超大内存的csv文件

    mysql 导入 csv 大文件怎么打开_mysql导入超大内存的csv文件1.直接用命令2.用分割器分割,再用导入最后要commit,不然没有真的导入数据库中。其中出现的问题:TheMySQLserverisrunningwiththe–secure-file-privoptionsoitcannotexecutethisstatement解决方法:【我的做法】【必须SQL文件和数据表都要在指定目录中】指定路径查询:showvariabl…

    2022年7月21日
    12
  • thinphp 安装 系统不支持curl!

    thinphp 安装 系统不支持curl!找到php.ini配置文件找到:修改前;extension=php_curl.dll修改后extension=php_curl.dll  //只是去掉前面的”;’分号php_curl.dll存在于php安装包的\ext文件夹下面,如果实在没有,自己去网上下载一个php_curl.dll放到:….\php\ext目录下注意:保存之后,重启一次服务器(

    2022年7月27日
    3
  • Java不可重入锁和可重入锁理解[通俗易懂]

    Java不可重入锁和可重入锁理解[通俗易懂]最近正在阅读JavaReentrantLock源码,始终对可重入和不可重入概念理解不透彻,进行学习后记录在这里。基础知识Java多线程的wait()方法和notify()方法这两个方法是成对出现和使用的,要执行这两个方法,有一个前提就是,当前线程必须获其对象的monitor(俗称“锁”),否则会抛出IllegalMonitorStateException异常,所以这两个方法必须在同步…

    2022年6月26日
    25
  • Mac 如何强制关机?「建议收藏」

    Mac 如何强制关机?「建议收藏」在通常情况下,MacOSX是非常稳定的,但是它偶尔也会发点小脾气,出现应用程序没有响应的情况。如果你正在运行的应用程序失去响应,强制退出一般都能解决,但是偶尔也会出现整个系统都失去响应,鼠标不能用,这时候你只能强制关机了。楼主使用Mac2年多了,只遇到过一次死机哈。下面介绍两种强制关机的解决办法:1、不用学就明白的,跟windows一样的,长按电源键不放,五秒之后电脑就会强行切断电源。不过它有个坏处,就是可能会损坏系统文件,所以建议不要使用这种方法。2、同时按住control+.

    2022年6月26日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号