[luoguP2518][HAOI2010]计数(数位DP)


传送门

重新学习数位DP。。

有一个思路,枚举全排列,然后看看比当前数小的有多少个

当然肯定是不行的啦

但是我们可以用排列组合的知识求出全排列的个数

考虑数位dp

套用数位dp的方法,枚举每一位,然后后面的数用排列组合求出方案数。

具体还是看代码吧。。说起来真不好说。。

#include <cstdio>#include <cstring>#include <iostream>#define N 1001#define LL long longusing namespace std;int n, m;int d[101], num[10];char c[N];LL f[N][N], t, ans;inline LL C(int x, int y)int main()for(i = n; i >= 1; i)num[d[i]];}cout << ans << endl;return 0;}

  



上一篇:[luoguP2805] [NOI2009]植物大战僵尸(网络流)

下一篇:[luoguP2324] [SCOI2005]骑士精神(A*?)


DP
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图