小红拿到了一个正整数,她准备切掉一个后缀并抛弃,使得剩余部分是9的倍数。小红想知道有多少种不同的操作方案?
输入描述:
一个正整数xxx 1≤x≤101000001\leq x \leq 10^{100000}1≤x≤10100000
输出描述:
一个整数,代表合法的方案数。
示例1
输入
1989
输出
2
说明
方案1:什么都不切(即切一个长度为0的后缀)。 方案2:切掉最后一个9(即切一个长度为1的后缀)。
//前提:一个数每个位数加起来可整除9,那么这个数可以整除9;
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
string s;//位数过大,用字符串存入
cin>>s;
int sum=0,count=0; //sum:每位数的累加 count:抛去后缀可整除的个数
for(int i = 0; i < s.size(); i++){ //s.size()=字符串的长度
sum+=s[i]-'0';
if(sum%9==0)count++;
}
cout<<count<<endl;
return 0;
}