摘要:
题意:略。思路:进行两次dp。第一次dp从前向后,用dp[x]表示从第x位向前dp[x]位可构成一个数字,且与前面的数组符合题意要求。最后求的dp[n]即为最后一个数字的长度。而题目还有要求,所有解中输出前面数字最大的一个。因此还需要进行一次dp,从后向前。具体看代码吧,当初也是看别人代码才看懂的。 1 #include 2 #include 3 char num[85]; 4 int dp[85], n; 5 bool judge(int st1,int len1,int st2,int len2) 6 { 7 while (num[st1] == '0' && 阅读全文