这里可以采用对进制辗转相除的逆过程来做答。
程序如下:
#include<iostream>
using namespace std;
int main()
{
int num=1;
int a[11];
char b[11];
int c[11]={2,3,5,7,11,13,17,19,23,29,31};
char ch;
int i=0,temp;
int j;
cin>>a[0];
while ((ch=getchar())!='\n')
{
b[i]=ch;
i++;
cin>>a[i];
}
b[i]='\0';
if (i==0)
{
num=a[i];
}
temp=i;
for (j=0;j<i;j++)
{
num =num*a[j]*c[temp-1]+a[j+1];
temp--;
}
cout<<num<<endl;
return 0;
}