Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- #include <gmpxx.h>
- using namespace std;
- mpz_class fibo(unsigned long fib)
- {
- mpz_class i = 1;
- mpz_class j = 0;
- for(size_t k = 1; k <= fib; k++)
- {
- mpz_class t;
- t = i+j;
- i = j;
- j = t;
- }
- return j;
- }
- int main()
- {
- mpz_class fib, modValue = 0, test;
- unsigned long m = 0, n = 0;
- while(cin >> n >> m)
- {
- if( n >= 0 && n <= 2147483647 && m >= 0 && m < 20)
- {
- fib = fibo(n);
- mpz_ui_pow_ui (modValue.get_mpz_t(), 2, m);
- test = fib % modValue;
- cout<<test<<"\n";
- }
- }
- return(0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement