For this Question: Sara is trying to open a lock for that she needs a passcode. Sara knows that the passcode contains N digits in it and the digits at even indices(0- indexing) are even and the digits at odd indices are {2, 3, 5, 7}.
Now Sara wants to know how many different passcodes are possible so that she can open her lock.The input contains a single integer N.

Constraints:-
1 <= N <= 10^15Print the number of possible passcodes.

Note:-
Since the answer can be quite large so print your ans modulo 10^9+7.Sample Input:-
1

Sample Output:-
5

Explanation:-
Possible answer:- 0,2,4,6,8

Sample Input:-
4

Sample Output:-
400, I have written this Solution Code: #include <bits/stdc++.h>
using namespace std;
  long long fast_pow(int base, long long n,int M=1000000007)
    {
        if(n==0)
           return 1;
        if(n==1)
            return base;
        long long halfn=fast_pow(base,n/2);
        if(n%2==0)
            return ( halfn * halfn ) % M;
        else
            return ( ( ( halfn * halfn ) % M ) * base ) % M;
    }
 int solve(long long n) {
       
        const int M = 1000000007;
        return (int)(fast_pow(5,(n+1)/2)*fast_pow(4,(n/2))%M);
    }
  
int main(){
long long n;
cin>>n;
cout<<solve(n);
}, In this Programming Language: C++, Now tell me if this Code is compilable or not?