[题目链接]

https://www.lydsy.com/JudgeOnline/problem.php?id=1072

[算法]

状压DP

[代码]

#include<bits/stdc++.h>
using namespace std;
#define MAXD 1000
const int MAXS = ; int i,j,k,T,len,d,MASK;
char s[];
long long f[MAXS][MAXD];
long long ans;
long long fac[];
int cnt[]; int main()
{ fac[] = ;
for (i = ; i <= ; i++) fac[i] = fac[i-] * i;
scanf("%d",&T);
while (T--)
{
scanf("%s%d",&s,&d);
len = strlen(s);
MASK = ( << len) - ;
memset(f,,sizeof(f));
memset(cnt,,sizeof(cnt));
for (i = ; i < len; i++) cnt[s[i] - '']++;
f[][] = ;
for (i = ; i <= MASK; i++)
{
for (j = ; j < d; j++)
{
for (k = ; k < len; k++)
{
if ((i & ( << k)) == )
f[i | ( << k)][(j * + s[k] - '') % d] += f[i][j];
}
}
}
ans = f[MASK][];
for (i = ; i < ; i++) ans /= fac[cnt[i]];
printf("%lld\n",ans);
} return ;
}

最新文章

  1. [收集]MVC3 HTML辅助方法集录
  2. 浅谈Android样式开发之layer-list
  3. ZeroMQ接口函数之 :zmq_close - 关闭ZMQ socket
  4. java并发编程系列
  5. Protocol and Delegate协议和代理
  6. Apache安装
  7. day15_集合第一天
  8. 关于配置服务器(IIS7)(二)
  9. 转: 使用virtualenv搭建独立的Python环境
  10. 让css初学者抓狂的属性float
  11. asp.net MVC开发过程中,使用到的方法(内置方法及使用说明)
  12. 浅谈.NET中闭包
  13. QT中实现中文的显示与国际化
  14. P2763: [JLOI2011]飞行路线
  15. android 四种堆状态
  16. INPUT输入框灰体提示
  17. java技术栈:项目概述
  18. 基于visual Studio2013解决C语言竞赛题之0607strcpy
  19. newlisp 注释生成文档
  20. Redis 安装与简单示例

热门文章

  1. [Offer收割]编程练习赛38
  2. 企业级Spring应用的搭建
  3. JavaScript实现复选框的全选、不选、反选
  4. C++:数据流和缓冲区
  5. 如何防范自己的IP泄漏
  6. Spring boot application.properties 配置
  7. (转)基于MVC4+EasyUI的Web开发框架经验总结(4)--使用图表控件Highcharts
  8. Auto Layout压缩阻力及内容吸附讲解
  9. MVC 返回json数据
  10. 谈谈网页中的ajax