注意到模数很小,容易想到使用卢卡斯定理,即变成一个2333进制数各位组合数的乘积。对于k的限制容易想到数位dp。可以预处理一发2333以内的组合数及组合数前缀和,然后设f[i][0/1]为前i位是否卡限制的贡献就很好dp了。为什么大家都要化式子呢。

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;
#define ll long long
#define P 2333
ll read()
{
ll x=,f=;char c=getchar();
while (c<''||c>'') {if (c=='-') f=-;c=getchar();}
while (c>=''&&c<='') x=(x<<)+(x<<)+(c^),c=getchar();
return x*f;
}
char getc(){char c=getchar();while ((c<'A'||c>'Z')&&(c<'a'||c>'z')) c=getchar();return c;}
int gcd(int n,int m){return m==?n:gcd(m,n%m);}
int T,C[P][P],S[P][P],a[],b[],f[][];
ll n,m;
int calc(ll n,ll m)
{
int t=-;
while (n) a[++t]=n%P,n/=P;
for (int i=;i<=t;i++) b[i]=m%P,m/=P;
memset(f,,sizeof(f));
f[t+][]=;
for (int i=t;~i;i--)
{
f[i][]=f[i+][]*C[a[i]][b[i]]%P;
if (b[i]) f[i][]=f[i+][]*S[a[i]][b[i]-]%P;
f[i][]=(f[i][]+f[i+][]*S[a[i]][P-]%P)%P;
}
return (f[][]+f[][])%P;
}
int main()
{
#ifndef ONLINE_JUDGE
freopen("bzoj4591.in","r",stdin);
freopen("bzoj4591.out","w",stdout);
const char LL[]="%I64d\n";
#else
const char LL[]="%lld\n";
#endif
T=read();
for (int i=;i<P;i++)
{
C[i][]=C[i][i]=;
for (int j=;j<i;j++)
C[i][j]=(C[i-][j-]+C[i-][j])%P;
S[i][]=;
for (int j=;j<P;j++) S[i][j]=(S[i][j-]+C[i][j])%P;
}
while (T--)
{
n=read(),m=min(n,read());
printf("%d\n",calc(n,m));
}
return ;
}

最新文章

  1. Qt里获取目录的一个另类方法
  2. zabbix3.2安装graphtree3.0.4
  3. [课程设计]Scrum 2.7 多鱼点餐系统开发进度(下单一览页面-菜式添加功能的继续实现)
  4. 【Cocos2d-x】VS2012开发2dx无法解析的外部符号解决记录(第一篇)【转】
  5. 161108、Java IO流读写文件的几个注意点
  6. ioctl()获取本地网卡设备信息
  7. J2SE7规范_2013.2_类型_命名
  8. uva 11536 - Smallest Sub-Array
  9. Windows安装TensorFlow-Docker Installation of TensorFlow on Windows
  10. Canvas使用渐变之-线性渐变详解
  11. ORA-00942:表或视图不存在(低级错误)
  12. 201521123071 《JAVA程序设计》第七周学习总结
  13. [Java反射机制]用反射改进简单工厂模式设计
  14. codefroces 55D Beautiful numbers
  15. form中的button默认提交事件
  16. Spring系列-SpringBoot 学习路径
  17. CF Good Bye 2018
  18. (办公)Mysql入门
  19. 反射简化switch语句
  20. 【代码审计】五指CMS_v4.1.0 后台存在SQL注入漏洞分析

热门文章

  1. Java学习笔记十二:Java中方法的重载
  2. ABAP CDS ON HANA-(12)ODATA Service
  3. MAVEN的项目升级
  4. 4368: [IOI2015]boxes纪念品盒
  5. Spring MVC: 环境搭建并实现简易的HelloWorld
  6. Ganglia3.1.7安装与配置(收录)
  7. 根据STATUS信息对MySQL进行优化
  8. Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正)
  9. 程序员编程利器:20款最好的免费的IDEs和编辑器
  10. Ubuntu-C++环境设置