Problem:
Score : 100 points

Problem Statement

You are given an integer N that has exactly four digits in base ten.
How many times does 2 occur in the base-ten representation of N?

Constraints

1000 \leq N \leq 9999

Input

Input is given from Standard Input in the following format:

N

Output

Print the answer.

Sample Input 1

1222

Sample Output 1

3

2 occurs three times in 1222. By the way, this contest is held on December 22 (JST).

Sample Input 2

3456

Sample Output 2

0

Sample Input 3

9592

Sample Output 3

1

Solution in C (GCC 5.4.1) (judge verdict: Wrong Answer)

#include <stdio.h>
#include <math.h>

int separate(unsigned long long n, int s);

int main(void) {

    unsigned long long num;
    int s;
    int a;

    scanf("%d %llu", &s, &num);
    a = separate(num, s);

    printf("%d\n", a);

    return 0;
}

int separate(unsigned long long n, int s) {

    unsigned long long i;
    int c;
    int a = 1;

    for ( i = 2; i <= n; i++ ) {
        for ( c = 0; !(n % i); c++ ) {
            n /= i;
        }
        if ( c/s ) {
            a *= pow(i, (c/s));
    //  i * ( c/s );
        }
    }

    return a;

}