集美大学“第15届蓝桥杯大赛(软件类)“校内选拔赛 D矩阵选数

经典的状态压缩DP

cpp 复制代码
int dp[15][(1<<14)+10];
int a[15][15];
void solve()
{
	
	//dp[i][st]考虑到了第i行 并且当前考虑完第i行以后的选择状态是st的所有方案中的最大值
	for(int i=1;i<=13;i++)
	 for(int j=1;j<=13;j++)
	  cin>>a[i][j];
	
	for(int i=1;i<=13;i++){
		for(int j=0;j<(1<<14);j++)
		 for(int k=0;k<13;k++){
		 	if(j>>k&1)dp[i][j] = max(dp[i][j],dp[i-1][j^(1<<k)]+a[i][k+1]);
		 }
	}
	
	cout<<dp[13][(1<<14)-1];
	 
}
相关推荐
??tobenewyorker42 分钟前
力扣打卡第23天 二叉搜索树中的众数
数据结构·算法·leetcode
贝塔西塔1 小时前
一文读懂动态规划:多种经典问题和思路
算法·leetcode·动态规划
众链网络1 小时前
AI进化论08:机器学习的崛起——数据和算法的“二人转”,AI“闷声发大财”
人工智能·算法·机器学习
2 小时前
Unity开发中常用的洗牌算法
java·算法·unity·游戏引擎·游戏开发
飒飒真编程3 小时前
C++类模板继承部分知识及测试代码
开发语言·c++·算法
GeminiGlory3 小时前
算法练习6-大数乘法(高精度乘法)
算法
熬了夜的程序员3 小时前
【华为机试】HJ61 放苹果
算法·华为·面试·golang
马特说4 小时前
基于随机森林的金融时间序列预测系统:从数据处理到实时预测的完整流水线
算法·随机森林·金融
呆呆的小鳄鱼4 小时前
leetcode:HJ18 识别有效的IP地址和掩码并进行分类统计[华为机考][字符串]
算法·leetcode·华为
艾莉丝努力练剑4 小时前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(五)
c语言·开发语言·数据结构·学习·算法