maxk.cpp
来自「最大K乘积大家看着用吧 多余的就不多说了」· C++ 代码 · 共 70 行
CPP
70 行
// maxk.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "iostream.h"
#include "stdio.h"
int putnum;
int f[99][99];
int ka[99][99];
int n,m;
conv(int i,int w)
{
int j=i+w;
int q=10;
int p=10;
for(int m=2;m<=n-j;m++)
{
q=q*10;
}
if(j==n)
{
q=1;
}
for(m=2;m<=j-1;m++)
{
p=p*10;
}
int pass=putnum/q%p;
return pass;
}
void solve(int n,int m)
{
int i,j,k;
int temp,maxn,nk=0;
for(i=1;i<=n;i++)
f[i][1]=conv(0,i);
for(j=2;j<=m;j++)
for(i=j;i<=n;i++)
{
for(k=1,temp=0;k<i;k++)
{
maxn=f[k][j-1]*conv(k,i-k);
if(temp<maxn)
{
temp=maxn;nk=k;
}
}
f[i][j]=temp;ka[i][j]=nk;
}
}
int main(int argc, char* argv[])
{
while(1)
{
cout<<"input nimber putnum"<<endl;
cin>>putnum;
cout<<"your number length is"<<endl;
cin>>n;
cout<<"how much do you want to cover up?"<<endl;
cin>>m;
solve(n,m);
cout<<(f[n][m])<<endl;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?