#include <bits/stdc++.h>
using namespace std;

int64_t MOD;
void add(int64_t& a, int64_t b){
    a = (a+b) % MOD;
}
void mul(int64_t& a, int64_t b){
    a = a*b % MOD;
}

int main(){
    int N;
    cin >> N >> MOD;

    vector<int> C(N-1);
    for(int i=0; i<N-1; i++) C[i] = min(1+i, N-i);

    static int64_t dp[5001];
    dp[0] = 1;
    for(int i=0; i<N-1; i++) for(int j=0; j+C[i]<=N; j++) add(dp[j+C[i]], dp[j]);
    
    int64_t ans = 0;
    for(int j=0; j<=N; j++) add(ans, dp[j]*(N-j));
    cout << ans << endl;
    return 0;
}
