文章目录

  • 题意
  • dp状态寻求

10月31日晚arc107真题
先吐槽这一场的前四题竟然都是计数题,让我非常震惊.
这是一道十分精巧的dp,对提高自身的dp实力有比较大的帮助,本人强烈推荐.

题意

求含有nnn个数,和为kkk,每个数都形如12i(i∈N)\frac{1}{2^i} (i\in N)2i1​(i∈N)的集合数量取模998244353998244353998244353.
1≤k≤n≤30001\leq k\leq n\leq 30001≤k≤n≤3000.

dp状态寻求

符合条件的集合可以分为两种:

  1. 含有111的集合
  2. 不含有111的集合

假设dp[i][j]dp[i][j]dp[i][j]表示iii个数组成jjj的集合数量.
对于第一种情况,去掉一个111,则答案可从dp[i−1][j−1]dp[i-1][j-1]dp[i−1][j−1]转移过来.
对于第二种情况,集合内所有数都乘2,相当于从dp[i][j×2]dp[i][j\times 2]dp[i][j×2]转移过来.
结束.

const int aoi=3058,mod=998244353;
ll dp[aoi][aoi];
int main() {int i,j,n,k;read(n),read(k);for (**dp=i=1;i<=n;++i) {for (j=i;j;--j) dp[i][j]=(dp[i-1][j-1]+(j*2>i?0:dp[i][j*2]))%mod;}printf("%lld\n",dp[n][k]);
}

谢谢.

arc107_d Number of Multisets dp相关推荐

  1. ARC107——D - Number of Multisets

    D - Number of Multisets 之前写过一个类似表示的题(2018CCPC吉林赛区--C - Justice),也是让用12,14,18-\frac1 2 ,\frac 14,\fra ...

  2. Mountain Number FZU-2109数位dp

    Mountain NumberFZU-2109 题目大意:一个大于0的数字x,分写成x=a[0]a[1]a[2][3]..a[n]的形式,(比如x=1234,a[0]=1,a[1]=2,a[3]=3, ...

  3. 【HDU - 4055】Number String(dp,思维)

    题干: The signature of a permutation is a string that is computed as follows: for each pair of consecu ...

  4. HDU-5197-beautiful number(数位DP)

    beautiful number Problem Description Let A=∑i~n=ai∗10n−i(1≤ai≤9)(n is the number of A's digits). We ...

  5. HDU 4323 Magic Number(编辑距离DP)

    http://acm.hdu.edu.cn/showproblem.php?pid=4323 题意: 给出n个串和m次询问,每个询问给出一个串和改变次数上限,在不超过这个上限的情况下,n个串中有多少个 ...

  6. CodeForces - 1426F Number of Subsequences(dp)

    题目链接:点击查看 题目大意:给出一个长度为 n 的字符串,由 ' a ' , ' b ' , ' c ' 和 ' ? ' 组成,每一个 ' ? ' 都可以变成三个字母之一,这样的话假设有 k 个 ' ...

  7. HDU4055 - number string(DP)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4055 思路:dp[i][j]表示处理前i个字符以j结尾可能的序列数. 当a[i]=='I'时,dp[i ...

  8. [CSA49G][XSY3315] Bunny on Number Line (DP)

    CSA49G XSY3315 因为判断两串是否本质不同只看某几项是不是好数,与究竟是哪个好数无关,所以考虑转换一下题意: 给出一个长度为aka_kak​的01串SSS,第a1,a2,...,aka_1 ...

  9. [POJ3252]Round Number(数位dp)

    题目链接:http://poj.org/problem?id=3252 题意:求范围内数字二进制下0的个数大于等于1的个数的数的个数. 数位dp,dp(l,zero,one,fz)记录当前第l位时0的 ...

最新文章

  1. (0018)iOS 开发之Github 使用技巧
  2. Linux文件基本属性
  3. cmd在执行hadoop version时出现系统找不到指定的路径。 Error: JAVA_HOME is incorrectly set
  4. python网络数据采集(伴奏曲)
  5. 819C - RAW文件系统、集成文件系统
  6. mysql之delete删除记录后数据库大小不变
  7. C加载JVM崩溃,一般是因为某个变量为NULL
  8. python 中文乱码问题深入分析
  9. 一杯茶的时间,上手第三方登录类库 JustAuth
  10. 公司java项目上线生产环境发布流程
  11. POI Cannot add merged region XXX to sheet because it overlaps with an existing merged region问题解决
  12. java中osend_Java中OIO与NIO的简单区别
  13. 如何维持手机电池寿命_延长iPhone 手机电池寿命的几个方法
  14. 华为云Web应用防火墙 ——为网络安全打通“第一公里”
  15. 静态对象线程java_慢速多线程Java应用程序:这是由于访问静态对象引起的吗?...
  16. 程序员必备神器:一款开源的不良坐姿监测应用 「PoseMon 让爷康康」
  17. Android开发最佳实践
  18. python将英文单词表示的数字转换成阿拉伯数字的代码
  19. ListNameValuePair params = new ArrayListNameValuePair();
  20. 华为畅享6怎么找回计算机,华为荣耀畅玩6双清解屏幕锁格机恢复出厂设置方法...

热门文章

  1. 什么是 COB 灯?
  2. 20200205 打印沙漏
  3. LeetCode 0417「太平洋大西洋水流问题」
  4. iOS app的启动优化
  5. Weblogic11g 在linux安装详解
  6. 「建模学习」游戏中的场景建模,原来是靠3D扫描建模技术完成?
  7. 电厂3D可视化_输变电站三维扫描建模
  8. 【环境搭建】Ubuntu18.04 nvidia显卡 OpenCL环境搭建
  9. 乐观锁和悲观锁的含义-实现方式-应用场景
  10. 第五期 中断设计 基于ARTY A7的MicroBlaze系统搭建与应用