很賤的一道題。。。我本來以為可以隨便水的。。。結果還是WA了幾次
輸入的數居然可能是N千位。。。所以只能以字符串輸入了
后面還看到個小技巧,如2位數ab,a+b=a*10+b-9*10=ab%9
#include <iostream>
#include <vector>
#include <string>
#include <math.h>
#include <iomanip>
using namespace std;

int sum;
void digsum(string& s)


{
sum=0;
for (size_t i=0;i<s.length();i++)

{
sum+=s[i]-'0';
}
sum%=9;
if (sum==0)

{
sum=9;
}
}
int main()


{
vector<int> result;
string s;
while (1)

{
cin>>s;
if (s=="0")

{break;
}
digsum(s);
result.push_back(sum);
}
for (size_t i=0;i<result.size();i++)

{
cout<<result[i]<<endl;
}
}
輸入的數居然可能是N千位。。。所以只能以字符串輸入了
后面還看到個小技巧,如2位數ab,a+b=a*10+b-9*10=ab%9
#include <iostream>
#include <vector>
#include <string>
#include <math.h>
#include <iomanip>
using namespace std;
int sum;
void digsum(string& s)

{
sum=0;
for (size_t i=0;i<s.length();i++)
{
sum+=s[i]-'0';
}
sum%=9;
if (sum==0)
{
sum=9;
}
}
int main()

{
vector<int> result;
string s;
while (1)
{
cin>>s;
if (s=="0")
{break;
}
digsum(s);
result.push_back(sum);
}
for (size_t i=0;i<result.size();i++)
{
cout<<result[i]<<endl;
}
}
