![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 87
abc2779845
这个作者很懒,什么都没留下…
展开
-
商汤科技2021秋招笔试编程题
1、找出字符串中能组成“Good”的个数有几个,不能改变字符在串中的相对位置#include <bits/stdc++.h>using namespace std;int a[100001];原创 2020-08-22 09:11:31 · 755 阅读 · 0 评论 -
动态规划-完全背包问题
思路:跟01背包类似:动态规划01背包问题1、同样令dp[i][j]表示前i件物品恰好放入容量为j的背包中能获得的最大价值。2、和01背包一样,完全背包问题的每种物品都有两种策略,不同的是。对第i件物品来说:(1)不放第i件物品,那么dp[i][j] = dp[i-1][j],这步跟01背包是一样的。(2)放第i件物品。这里的处理和01背包有所不同,因为01背包的每个物品只能选择一个,因此选择放第i件物品就意味着必须转移到dp[i-1][j-w[i]]这个状态;但是完全背包问题不同,完全背包如果选原创 2020-08-02 15:36:51 · 462 阅读 · 1 评论 -
01背包问题-动态规划
size:背包容量n:物品数量s[i]:第i物品的体积v[i]:第i物品的价值解决办法:声明一个dp[n][size] 的二维数组,dp[ i ][ j ] 表示 在面对第 i 件物品,且背包容量为 j 时所能获得的最大价值(即:在容量为j时,应该拿第i个物品吗) ,分析得出 dp[i][j] 的计算方法为:(1) j < s[i] 的情况,这时候背包容量不足以放下第 i 件物品,只能选择不拿 :dp[ i ][ j ] = dp[ i-1 ][ j ](2)j>=s[i] 的情原创 2020-08-02 14:35:29 · 171 阅读 · 0 评论 -
人工智能:(C语言)采用状态空间法求解八数码问题
实验要求:八数码难题也称九宫问题,它是在3×3的方格棋盘上,分别放置了表有数字1、2、3、4、5、6、7、8的八张牌,初始状态S0,目标状态Sg,要求程序能输入任意的初始状态和目标状态,要求通过空格来移动八张牌使得棋盘由初始状态到达目标状态。**移动规则为:**每次只能将与空格(上下左右)相邻的一个数字平移到空格中。实验要求应用广度优先搜索策略寻找从初始状态到目标状态的解路径,编程语言为C系列语言。完整代码如下:#include<stdio.h>struct node{ int a[原创 2020-06-30 13:37:58 · 5695 阅读 · 0 评论