DP

ショートコーディング大会みたいになった。

#include <bits/stdc++.h>

using namespace std;

const int mod = 100000;
int w,h,dp[102][102][4];

int main(){
	cin >> w >> h;
	dp[1][1][0] = 1;dp[1][1][3] = 1;
	for(int i = 1;i <= h;i++){
		for(int j = 1;j <= w;j++){
			if(i == 1 && j == 1)continue;
			dp[i][j][0] = dp[i-1][j][0] + dp[i-1][j][2];
			dp[i][j][1] = dp[i-1][j][0];
			dp[i][j][2] = dp[i][j-1][3];
			dp[i][j][3] = dp[i][j-1][1] + dp[i][j-1][3];
			for(int k = 0;k < 4;k++)dp[i][j][k]%=mod;
		}
	}
	cout << (dp[h][w][0]+dp[h][w][3])%mod << endl;
	return 0;
}