非常简单的动态规划,不过需要注意一下
首先,这里要一列一列的建立DP表
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++){
}
}
然后进行建表,建表要特别注意,稍微有一点错误就会导致WA,为了求出最小天数,应该使用这个方程
dp[j][i]=min(dp[j-1][i-1],dp[j][i-1])+a[j][i];
题目中说了,可以各小组进行交换,但如果j==m,可以选择与第一个小组进行交换,所有在内循环结束后,用这个方程
dp[1][i]=min(dp[1][i-1],dp[m][i-1])+a[1][i];
加油吧,少年