• Source
    1. #include<stdio.h>
    2. #include<string.h>
    3. #include<iostream>
    4. #include<algorithm>
    5. #include<map>
    6. const long long inf=1e17;
    7. #define forn(i,n) for(int i=0;i<n;i++)
    8. #define ll long long
    9. using namespace std;
    10. ll mod=pow(10,9)+7;
    11. ll a[5020];
    12. int main(){
    13. int t;
    14. ll n,i;
    15. string s;
    16. cin>>s;
    17. while(s[0]!='0'){
    18. memset(a,0,sizeof(a));
    19. a[0]=1;
    20. a[1]=1;
    21. ll d=(s[0]-'0')*10+(s[1]-'0');
    22. if(d>=10&&d<=26)
    23. a[1]=2;
    24. for(i=2;i<s.length();i++){
    25. d=(s[i-1]-'0')*10+(s[i]-'0');
    26. if(d>=10&&d<=26)
    27. a[i]=a[i-1]+a[i-2];
    28. else
    29. a[i]=a[i-1];
    30. }
    31. printf("%lld\n",a[i-1]);
    32. cin>>s;
    33. }
    34. return 0;
    35. }