#include #include #include #include #include #include #include #include #include #include #define mkp make_pair #define mkt make_tuple #define rep(i,n) for(int i = 0; i < (n); ++i) #define all(v) v.begin(),v.end() using namespace std; typedef long long ll; const ll MOD=1e9+7; template void chmin(T &a,const T &b){if(a>b) a=b;} template void chmax(T &a,const T &b){if(a>W>>H>>X; for(int a=0;a<=9;a++) for(int b=0;b<=9;b++) for(int c=0;c<=9;c++) for(int d=0;d<=9;d++){ if(a+b+c+d!=X) continue; int R=min(H,6+H%3); int C=min(W,6+W%3); vector> A(R,vector (C,0)); for(int i=0;i=R||ny>=C) continue; res+=A[nx][ny]; } if(res!=X){ ng=true; break; } } if(ng) continue; for(int i=0;i