Advertisement

算法课程中的动态规划练习:解决饼干问题

阅读量:
在这里插入图片描述

初次接触到这道题目时,首先想到的是采用暴力解法,但随后发现当X的位数增加后,计算量会变得异常庞大,因此不得不放弃该思路。之后尝试使用动态规划的方法进行求解,但由于自身能力有限,未能独立推导出对应的状态转移方程,于是参考了这位网友的解法,发现其实实现起来较为简单。分解饼干问题
该方法的核心思想是通过持续地进行取模运算并保留余数的状态,其状态转移方程可以表示为:dp[i][temp % n] += dp[i - 1][j]。具体的代码实现如下:

复制代码
    #include<iostream>
    #include<algorithm>
    #include<vector>
    #include<map>
    
    using std::cin;
    using std::cout;
    using std::endl;
    using std::vector;
    using std::string;
    
    int main()
    {
    	string cookies;
    	int n;

全部评论 (0)

还没有任何评论哟~