当前位置: 首页 > news >正文

睡前小dp-codeforce414B-dp+一点点想法

http://codeforces.com/problemset/problem/414/B

 

定义一个串为好的串当这个串符合 di|di+1,1<i<k-1

给定一个n为串中元素的取值范围,一个k为串的长度,计算串的所有可能的计数。

 

我一开始想到了用dp[i][j] i表示串的长度,j表示长度为i结尾为j的串的数目。

但是怎么递推我想歪了。我想的是从i-1推出所有的i,这样每次递推都有n^2的复杂度。

看了题解才明白是每次用i把i+1推出来。

 

#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

const int MOD = 1000000007;
int n,k,dp[2010][2010];

int main()
{
    while(~scanf("%d%d",&n,&k))
    {
        memset(dp,0,sizeof dp);
        for(int i=1;i<=n;i++) dp[1][i] = 1;

        for(int i=1;i<k;i++)
        {
            for(int j=1;j<=n;j++)
            {
                for(int p=j;p<=n;p+=j)
                {
                    dp[i+1][p] += (dp[i][j]%MOD);
                    dp[i+1][p] %= MOD;
                }
            }
        }

        int ans = 0;
        for(int i=1;i<=n;i++)
        {
            ans += dp[k][i];
            ans %= MOD;
        }
        printf("%d\n",ans);
    }
}

 

转载于:https://www.cnblogs.com/helica/p/5022745.html

相关文章:

  • SlidingMenu-master中的example怎样导入eclipse运行
  • echarts.js
  • 使用Genymotion调试出现错误INSTALL_FAILED_CPU_ABI_INCOMPATIBLE解决办法
  • 使用Preference保存设置
  • Android小项目蓝牙电子钟
  • 百度地图使用案例代码
  • Handler的基本使用
  • Andriod Studio Clear Project或Rebuild Project出错
  • Activity的生命周期
  • javascript实现URL不缓存的方法
  • Android Studio VS Eclipse (还在用Eclipse?你OUT了!)
  • Android之TextView灵活使用
  • Android Studio安装后Fetching android sdk component information超时的解决方案
  • Git配置出现的问题
  • Android-studio+Genymotion模拟器的联合使用
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • input实现文字超出省略号功能
  • IP路由与转发
  • Less 日常用法
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • ubuntu 下nginx安装 并支持https协议
  • V4L2视频输入框架概述
  • 从重复到重用
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 世界上最简单的无等待算法(getAndIncrement)
  • 正则学习笔记
  • ionic异常记录
  • zabbix3.2监控linux磁盘IO
  • # 安徽锐锋科技IDMS系统简介
  • #QT(TCP网络编程-服务端)
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • (10)STL算法之搜索(二) 二分查找
  • (3)选择元素——(17)练习(Exercises)
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (二)换源+apt-get基础配置+搜狗拼音
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (一)Neo4j下载安装以及初次使用
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .Family_物联网
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .net 程序发生了一个不可捕获的异常
  • .Net6使用WebSocket与前端进行通信
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理