杭电1013 http://acm.hdu.edu.cn/showproblem.php?pid=1013
题目大意:
所谓数根。即数字各个位置之和。
若和大于10,则需要再次求和,直到小于10.
AC代码:
#include <iostream>
#include <cstring>
#include <algorithm>
#include <memory.h>
#include <cmath>
#include <stack>
//#define DEBUG
using namespace std;
typedef long long ll;
char a[10000]; //为了防止超范围
int main() {while(cin>>a) {if(a[0]=='0') return 0;int len=strlen(a);int sum=0;for(int i=0;i<len;i++) {sum+=a[i]-'0';}if(sum<=9) cout<<sum<<endl;else cout<<sum%9<<endl<<(sum-1)%9+1<<endl; //“九余数定理”?}return 0;
}