알고리즘
[C++] 백준 6378번 디지털 루트
J3SUNG
2019. 9. 23. 10:53
728x90
숫자의 자리수를 각각 더해서 1의자리가 되면 출력해줍니다.
#include <iostream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
string s;
int sum;
while(1) {
sum = 0;
cin >> s;
if(s == "0"){
break;
}
while(1) {
for(int i=0; i<s.length(); ++i) {
sum += s[i] - '0';
}
if(sum < 10) {
break;
}
else {
s = to_string(sum);
sum = 0;
}
}
cout << sum << endl;
}
return 0;
}