题意:http://www.lydsy.com/JudgeOnline/problem.php?id=1902

sol  :一眼可以看出此题应用了lucas定理(逃~

   将n,m都化为p进制,记为a[],b[]

   则对于我们所求的C(n,m)%p,有C(n,m)=∏ (i from 1 to n) (p^i)*(C(a[i],b[i]))%p

   若C(n,m)为p的倍数,则存在某一位b[i]>a[i]

   即此题要求有多少个<n的数,且其p进制下存在某一位比n的p进制的对应位大

   求出a[]后直接数位dp即可

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
using namespace std;
const int Mx=;
struct Node
{
int n,g[];
void pre(int k) {n=; g[]=k;}
Node operator*(const int &b)
{
Node c; int y=; c.n=n;
if(!b) { c.pre(); return c; }
for(int i=;i<=n;i++) { y+=g[i]*b; c.g[i]=y%; y/=; }
while(y) { c.g[++c.n]=y%; y/=; }
return c;
}
Node operator+(const Node &b)
{
Node c; int y=,p;
if(n>b.n)
{
c.n=n; for(int i=;i<=n;i++) c.g[i]=g[i]; p=b.n;
for(int i=;i<=b.n;i++) { y+=b.g[i]+c.g[i]; c.g[i]=y%; y/=; }
while(y&&p<n) { y+=c.g[++p]; c.g[p]=y%; y/=; }
}
else
{
c.n=b.n; for(int i=;i<=b.n;i++) c.g[i]=b.g[i]; p=n;
for(int i=;i<=n;i++) { y+=g[i]+c.g[i]; c.g[i]=y%; y/=; }
while(y&&p<b.n) { y+=c.g[++p]; c.g[p]=y%; y/=; }
}
if(y) c.g[++c.n]=y;
return c;
}
int operator/(const int &b)
{
int y=;
for(int i=n;i>=;i--)
{
y=y*+g[i];
if (y<b) g[i]=;
else {g[i]=y/b; y%=b;}
}
while(n>&&!g[n]) n--;
return y;
}
void read()
{
char s[Mx]; scanf("%s",s+); n=strlen(s+);
for(int i=;i<=n;i++) g[n+-i]=s[i]-'';
}
} x,mul,ans,f[Mx];
int p,a[Mx],cnt;
int main()
{
x.read(); scanf("%d",&p);
while(x.n!=||x.g[]) a[++cnt]=x/p;
f[].pre(),mul.pre(),ans.pre();
for(int i=;i<cnt;i++)
{
f[i]=mul*(p--a[i]);
f[i]=f[i]+f[i-]*(a[i]+);
mul=mul*p;
}
for(int i=cnt;i>;i--) ans=ans+f[i-]*a[i];
for(int i=ans.n;i>=;i--) printf("%d",ans.g[i]);
return ;
}

bzoj1902【Zju2116】 Christopher的更多相关文章

  1. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)

    初识马尔可夫和马尔可夫链 作者:白宁超 2016年7月10日20:34:20 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处 ...

  2. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(二)

    马尔可夫模型与隐马尔可夫模型 作者:白宁超 2016年7月11日15:31:11 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语 ...

  3. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(三)

    向前算法解决隐马尔可夫模型似然度问题 作者:白宁超 2016年7月11日22:54:57 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学 ...

  4. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(四)

    维特比算法解决隐马尔可夫模型解码问题(中文句法标注) 作者:白宁超 2016年7月12日14:08:28 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无 ...

  5. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(五)

    向前向后算法解决隐马尔可夫模型机器学习问题 作者:白宁超 2016年7月12日14:28:10 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场. ...

  6. 【翻译】理解 LSTM 网络

    目录 理解 LSTM 网络 递归神经网络 长期依赖性问题 LSTM 网络 LSTM 的核心想法 逐步解析 LSTM 的流程 长短期记忆的变种 结论 鸣谢 本文翻译自 Christopher Olah ...

  7. 【翻译】理解 LSTM 及其图示

    目录 理解 LSTM 及其图示 本文翻译自 Shi Yan 的博文 Understanding LSTM and its diagrams,原文阐释了作者对 Christopher Olah 博文 U ...

  8. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  9. 【原】谈谈对Objective-C中代理模式的误解

    [原]谈谈对Objective-C中代理模式的误解 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这篇文章主要是对代理模式和委托模式进行了对比,个人认为Objective ...

随机推荐

  1. pycharm 安装插件 支持markdown

    github项目中的README文件通常是md格式的,但是pycharm默认是不支持的,需要安装插件 进入settings中搜索plugins,然后在plugins中搜索markdown suppor ...

  2. 关于SQL数据库 msdb.dbo.sp_send_dbmail 函数发送邮件的场景分析

    关于SQL数据库 msdb.dbo.sp_send_dbmail 函数发送邮件的场景分析 在推行系统中,时不时会有用户提出希望系统能自动推送邮件,由于手头的工具和能力有限,不少需求都借助于sql se ...

  3. java Html&JavaScript面试题:用table显示n条记录,每3行换一次颜色,即1,2,3用红色字体,4,5,6用绿色字体,7,8,9用红颜色字体。

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. API调用微信getWXACodeUnlimit()获取小程序码

    微信文档地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/qr-code/getWXACodeUnlimit.html? ...

  5. EasyUI获取正在编辑状态行的索引

    function getRowIndex(target){ var tr = $(target).closest("tr.datagrid-row"); return paseIn ...

  6. L2TP用户添加和删除、搜索脚本

    #!/bin/bash #author Template . /etc/init.d/functions DATE_TIME=$(date +%F-%T) FILE_PATH='/etc/ppp/ch ...

  7. 【PHP】常用的PHP正则表达式收集整理

    匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度 ...

  8. CentOS下安装php gd库报错Error: php56w-common conflicts with php-common-5.3.3-48.el6_8.x86_64

    因为服务器缺少php gd库,因为系统是centos,就是用yum去安装,一安装就报错如下: [root@iZ28sdxghs2Z ~]# yum install php-gd Loaded plug ...

  9. A计划 hdu2102(BFS)

    A计划 hdu2102 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验.魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老.年迈的国 ...

  10. Java面向对象---类与对象的关系

    类是对某一类事物的描述,是抽象的.概念上的意义.对象是实际存在的该类事物的每一个个体,也被称为实例. 创建对象:包括声明对象和实例化对象 Person person;//声明 person = new ...