Language: C++

#define debug_interval ','
#define dump_interval ' '
#define debug_toggle 1
//{
#include<bits/stdc++.h>
using namespace std;
#define hi cerr<<"hi"<<endl;
#define int long long
#define INT_MAX LLONG_MAX
#define rep(i,n) for(int i=0;i<(n);i++)
#define rep1(i,n) for(int i=1;i<=(n);i++)
#define pb push_back
#define all(v) (v).begin(),(v).end()
#define rall(v) (v).rbegin(),(v).rend()
#define fi first
#define se second
#define mp make_pair
#define rev reverse
#define dans dump(ans)
#define MOD 1000000007
#define amp(v,n) (v).count(n)?v[n]++:v[n]=1
#define sysp system("pause")
#define PI acos(-1)
#define pf push_front
#define ins insert
#define fh(x,v) for(auto x:v)

//{
inline int toInt(string s){int v;istringstream sin(s);sin>>v;return v;}
template<class T> inline string toString(T x){ostringstream sout;sout<<x;return sout.str();}
template<class...A> inline void dump(){cout<<endl;}
template<class...A> inline void dump_rest() {cout<<endl;}
template<class T, class...A> inline void dump_rest(const T& first, const A&... rest){cout<<dump_interval<<first;dump_rest(rest...);}
template<class T,class...A> inline void dump(const T&first,const A&...rest){cout<<first;dump_rest(rest...);}
template<class...A> inline void debug(){cerr<<endl;}
template<class...A> inline void debug_rest() {cerr<<endl;}
template<class T, class...A> inline void debug_rest(const T& first, const A&... rest){cerr<<debug_interval<<first;debug_rest(rest...);}
template<class T,class...A> inline void debug(const T&first,const A&...rest){if(debug_toggle)cerr<<first,debug_rest(rest...);}
unsigned XorShift(void){static unsigned x = 123456789;static unsigned y = 362436069;static unsigned z = 521288629;static unsigned w = 88675123;unsigned t;t = x ^ (x << 11);x = y; y = z; z = w;return w = (w ^ (w >> 19)) ^ (t ^ (t >> 8));}
//}

typedef vector<int>vint;
typedef pair<int,int>pint;
typedef vector<pint>vpint;

template<typename A,typename B>inline void chmin(A &a,B b){if(a>b)a=b;}
template<typename A,typename B>inline void chmax(A &a,B b){if(a<b)a=b;}
template<int m>class mint{private:int i;public:mint() : i(0){}mint(int i): i((i%m+m)%m){}mint operator+(const mint& o){return o.i+i;}mint operator*(const mint& o){return o.i*i;}mint operator-(){return -i;}operator int() {return i;}};
template<class T>vector<T> var_vec(size_t a){return vector<T>(a);}
template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}

//}



main(){
	int n;cin>>n;
	auto dp=var_vec(n+1,5,5,5);
	dp[0][0][0][0]=1;
	rep(e,n)rep(i,5)rep(j,5)rep(k,5)rep(l,5){
		if(i==1&&j==2&&l==3)continue;
		if()
	}
}




Compiler output:
a.cc:9:9: warning: "INT_MAX" redefined
    9 | #define INT_MAX LLONG_MAX
      |         ^~~~~~~
In file included from /usr/include/c++/14/climits:42,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:38,
                 from a.cc:5:
/usr/lib/gcc/x86_64-linux-gnu/14/include/limits.h:120:9: note: this is the location of the previous definition
  120 | #define INT_MAX __INT_MAX__
      |         ^~~~~~~
a.cc: In function 'auto var_vec(size_t, Ts ...)':
a.cc:50:87: error: 'make_vec' was not declared in this scope
   50 | template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}
      |                                                                                       ^~~~~~~~
a.cc:50:97: error: expected primary-expression before '>' token
   50 | template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}
      |                                                                                                 ^
a.cc:50:101: error: expected ')' before '...' token
   50 | template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}
      |                                                                                                  ~  ^~~
      |                                                                                                     )
a.cc:50:78: error: template argument 1 is invalid
   50 | template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}
      |                                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
a.cc:50:78: error: template argument 2 is invalid
a.cc: At global scope:
a.cc:56:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   56 | main(){
      | ^~~~
a.cc: In function 'int main()':
a.cc:58:24: error: no matching function for call to 'var_vec(long long int, int, int, int)'
   58 |         auto dp=var_vec(n+1,5,5,5);
      |                 ~~~~~~~^~~~~~~~~~~
a.cc:49:28: note: candidate: 'template<class T> std::vector<_Tp> var_vec(size_t)'
   49 | template<class T>vector<T> var_vec(size_t a){return vector<T>(a);}
      |                            ^~~~~~~
a.cc:49:28: note:   candidate expects 1 argument, 4 provided
a.cc:50:36: note: candidate: 'template<class T, class ... Ts> auto var_vec(size_t, Ts ...)'
   50 | template<class T, class... Ts>auto var_vec(size_t a, Ts... ts){return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...));}
      |                                    ^~~~~~~
a.cc:50:36: note:   template argument deduction/substitution failed:
a.cc:58:24: note:   couldn't deduce template parameter 'T'
   58 |         auto dp=var_vec(n+1,5,5,5);
      |                 ~~~~~~~^~~~~~~~~~~
a.cc:62:20: error: expected primary-expression before ')' token
   62 |                 if()
      |                    ^
a.cc:63:9: error: expected primary-expression before '}' token
   63 |         }
      |         ^