这道题第一个点我在本地dev-c++上能过,不知道为啥在洛谷上就过不了
#include <bits/stdc++.h>
using namespace std;
long long s[41],c[41][7];
long long f (int i,int j)
{
long long num=0;
for (int k=i;k<=j;k++)
{
num=num*10+s[k];
}
return num;
}
int main()
{
long long maxx=-1,max;
int n,k;
char a;
scanf("%d %d",&n,&k);
getchar();
for (int i=1;i<=n;i++)
{
a=getchar();
s[i]=a-'0';
c[i][0]=f(1,i);
}
c[0][0]=0;
for (int i=1;i<=n;i++)
{
for (int j=1;j<=k;j++)
{
max=0;
for (int k=1;k<i;k++)
{
if (c[k][j-1]*f(k+1,i)>max) max=c[k][j-1]*f(k+1,i);
}
c[i][j]=max;
}
}
cout<<c[n][k];
return 0;
}