#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; #define REP(i,n) for(int (i)=0;(i)<(int)(n);(i)++) #define RREP(i,n) for(int (i)=(int)(n)-1;i>=0;i--) #define REMOVE(Itr,n) (Itr).erase(remove((Itr).begin(),(Itr).end(),n),(Itr).end()) #define UNIQUE(Itr) sort((Itr).begin(),(Itr).end()); (Itr).erase(unique((Itr).begin(),(Itr).end()),(Itr).end()) int main() { ll F1 = 0; ll F2 = 1; ll F3 = 1; ll N,M; cin >> N >> M; N-=2; REP(i,N) { F3 = F2 + F1; F3 %= M; F1 = F2; F2 = F3; } cout << F3 << endl; return 0; }