📄 10.txt
字号:
数字串的加法分解
//数字串的加法分解
#include <iostream.h>
#include <fstream.h>
#include <conio.h>
int a[21],b[21];
char ssz[201];
int sz[201];
int Min,n;
int jisuan(void);
int r,i,j,k,kd;
main()
{
char filename[18];
ifstream input;
cout<<"Input filename:";
cin>>filename;
input.open(filename);
// input.open("2.2");
input>>ssz;
n=strlen(ssz)-1;
for(i=1;i<=n+1;i++)sz[i]=ssz[i-1]-0x30;
input>>r;
for(i=1;i<=r;i++){a[i]=i;b[i]=n-r+i;}
k=r;j=0;
while(k>0)
{
if(k==r)
{
j=j+1;
kd=jisuan();
if(j==1) Min=kd;
if(kd<Min)
{ Min=kd;for(i=1;i<=r;i++)cout<<a[i]<<",";
cout<<Min<<endl;
}//cout<<Min<<endl;} //
}
if(a[k]<b[k])
{
a[k]=a[k]+1;
if(k<r)
for(k=k+1;k<=r;k++)a[k]=a[k-1]+1;
}
else k=k-1;
}
cout<<Min;
getch();
}
int jisuan(void)
{
int k1=1,js=0,jz=0,i1;
for(i1=1;i1<=n+1;i1++)
{
if(i1>a[k1]&&(k1<=r))
{
k1=k1+1;
jz=jz+js;
js=sz[i1];
}
else
js=sz[i1]+js*10;
}
jz=jz+js;
return jz;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -