sdut2878 记录思路待补

这题的状态是循环依赖的有环。。

之前一道概率DP,类似有环。。但是它是可以消掉的

比如dp[i]=0.3*dp[i+1]+0.2*dp[i+2]+0.5*dp[i];

完全可以变成,0.5*dp[i]=0.3*dp[i+1]+0.2*dp[i+2]

然后把系数除过去就好了,

然而这个题是,dp[i]=0.5*dp[i+1]+0.5*dp[i-1]+1;

这个+1是什么意思呢,dp[i]->要到i+1,i-1任意两个状态之一,一定要付出1步的代价!

想一想背包问题。。类似的,

然后你会发现dp[i]还没递归完。。dp[i-1]和dp[i+1]又跑回来找它了。。。这不可能DP得出来

所以这个题正确的消环方法是,高斯消元

高斯消元我还不太会写。。待我学习一波回来写一写!

时间: 2024-10-19 13:02:21

sdut2878 记录思路待补的相关文章

CozyRSS开发记录6-继续补全订阅内容栏

CozyRSS开发记录6-继续补全订阅内容栏 1.订阅内容栏布局 按照之前的原型图,把订阅内容栏分成三块.Xaml如下: 2.照葫芦画瓢,完成头部和列表 头部依然使用ColorZone,右侧再放两个按钮.Xaml如下: 列表项分两行,第一行包含两个图标和内容标题,第二行是时间.Xaml如下: 3.最终效果 RssContentView部分暂时先用一个WebBrowser. 列表里的图标用到了materialDesign的PackIcon,在materialDesign的demo里可以看到所有图标

浅谈自学方法论- 不断更新-记录思路

1. 用程序员的思想,去自学. 从主函数入手,也就是,了解整个框架. 2. 读书,带着宏观和微观的思路, 先不管看得懂看不懂看第一遍, 然后带着问题去读第二遍,并搜索不懂得关键词. 第三遍,精读,记住核心思想. 3.在大概弄清架构,原理,工具,后去找大项目分析源码, 实践. 4.提高程序运行性能,学习积累算法,底层架构与流程.

记录出差罗马尼亚的准备

  已经来罗国三个星期了,今天是他们的public day,得空休息,便想起之前欠下的这篇关于出差准备的记录,今天补上,希望其中的内容对一些需要来罗国出差的朋友能有帮助,同时也是对自己的一个存档.     首先介绍背景,我在南京,公司是个汽车零配件行业德企,在Romania的Timisoara设有Hub,这次出差去Timisoara是为了参与Fiat项目的合作,计划出差时间三个月,因此我们要申请的是罗马尼亚多起停留签证(在其境内不超过90天).具体要求可以参考罗马尼亚驻华大使馆网站 http:/

SQL 查询当天,本月,本周的记录

本文转载自Crazy Coder SELECT * FROM 表 WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111)   ORDER BY dateandtime DESC 本月记录 SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0 本周记录 SELECT * FROM 表 WHERE datediff(week,[date

JS字符串补全方法padStart()和padEnd()

背景: var t = new Date().getMonth() + 1; // t ===> 7,没有0,怎么展示成下面的样子? // 2018-07-23 解决上述问题的一个思路: // 补0函数 function(num) { return +num < 10 ? '0' + num : num; } padStart(len, str) 根据给定长度自动在字符串的前面补充想补充的字符串(只返回修改后的字符串,不修改原字符串) len 给定的长度,转换后 str 想补充的字符串 栗子:

MySQL-注释-Navicat基本使用-复杂查询练习题-解题思路-pymysql操作数据库-SQL注入-05

目录 mysql语句注释 navicat 的基本使用 特色(个人总结) 与数据服务器建立连接 创建&打开数据库.表 创建 打开 修改操作表结构 修改表结构 查询修改操作表数据 基本语句对应的操作 模型 ***** 特色功能 从数据库建立模型 模型页面基本操作 用模型设计数据库并导出 结构.数据导入导出 导出 导入 附属小功能 刷新小按钮 查看操作对应sql语句 执行时间查看 手动筛选数据 练习 数据准备 使用SQL语句导入表结构与数据 如何验证答案是否正确 题目 部分参考答案(只放了两题的) 少

MSVC vs. MinGW 之dll玩转攻略手记[转]

一份粗糙的研究记录,有待补完和整理. MinGW:c -> o           gcc -c a.cc -> exe         gcc a.c libs.o -o a.exe (从主程序a.c,附加libs,生成a.exe)o -> exe         gcc a.o b.o ... -o main.exec -> dll,def,a   gcc a.c -shared -o a.dll -Wl,--output-def,a.def,--out-implib,liba

vim插件详细安装过程

1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了, 我今天教大家把gvim改装成一个简易IDE, 说它"简易"是界面上看起来&quo

手把手教你把Vim改装成一个IDE编程环境(图文)

By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage: http://blog.csdn.net/wooin Copyright: 该文章版权由吴垠和他可爱的老婆小包子所有.可在非商业目的下任意传播和复制.对于商业目的下对本文的任何行为需经作者同意.联系方式:lazy.fox.wu#gmail.com 1 写在前面   Linux 下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux