问题可以看成大数除以2到9的数能不能整除 看最后余数是否为零
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;bool flag=false;
cin>>s;
for(int i=2;i<=9;i++)
{
int sum=0,t;
for(int j=0;j<s.length();j++)
{
if(sum<i)sum=sum*10+s[j]-'0';
if(sum>=i)
{
t=sum/i;
sum-=t*i;
}
}
if(sum==0)
{
cout<<i<<" ";
flag=true;
}
}
if(!flag)cout<<"none";
}