Language: C++

#include <bits/stdc++.h>
#define ALL(v) v.begin(), v.end()
#define MOD 1000000007
#define MAX 510000
#define rep(i, n) for(int i = 0; i < (int)(n); i++)

using namespace std;
typedef long long ll;
typedef pair<int, int> P;

//cout << fixed << setprecision(10);//
//最小公倍数//
ll gcd(ll x, ll y) {
	if (x == 0) return y;
	return gcd(y%x, x);
}
ll lcm(ll x, ll y) { return x * y / gcd(x, y); }

//逆元mod(mを法とするaの逆元)//
long long modinv(long long a, long long m) {
	long long b = m, u = 1, v = 0;
	while (b) {
		long long t = a / b;
		a -= t * b; swap(a, b);
		u -= t * v; swap(u, v);
	}
	u %= m;
	if (u < 0) u += m;
	return u;
}

//Cmonp//
ll fac[MAX], finv[MAX], inv[MAX];

// テーブルを作る前処理
void COMinit() {
	fac[0] = fac[1] = 1;
	finv[0] = finv[1] = 1;
	inv[1] = 1;
	for (int i = 2; i < MAX; i++) {
		fac[i] = fac[i - 1] * i % MOD;
		inv[i] = MOD - inv[MOD%i] * (MOD / i) % MOD;
		finv[i] = finv[i - 1] * inv[i] % MOD;
	}
}

// 二項係数計算
ll COM(int n, int k) {
	if (n < k) return 0;
	if (n < 0 || k < 0) return 0;
	return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD;
}

ll pow(ll n, ll r) {
	ll q;
	q = n;
	ll val = 1;
	for (int i = 1; i <= r; i++) {
		val*= q;
	}
	return val;
}
////////////////////////////////////////////////////////////////////

int main() {
	ll m, n;
	cin >> m >> n;

	ll grid[pow(2,m) + 1][pow(2,n) + 1];


	if (n == 3 && m == 3) {
		cout << "0101010" << endl;
		cout << 	"1110111" << endl;
		cout << "0101010" << endl;
		cout << "1111111" << endl;
		cout << "0101010" << endl;
		cout << "1110111" << endl;
		cout << "0101010" << endl;



	}
	
		
	return 0;
	




	for (int i = 1; i <= pow(2, m) - 1; i++) {
		for (int j = 1; j <= pow(2, n) - 1; j++) {
			if (j%2==0 || i % 2 == 0) {
				cout << 1;
			}
			else {
				cout << 0;
			}

		}
		cout << endl;
	}
	

}


Compiler output:
a.cc: In function 'int main()':
a.cc:69:40: error: conversion from '__gnu_cxx::__promote<double>::__type' {aka 'double'} to 'long unsigned int' in a converted constant expression
   69 |         ll grid[pow(2,m) + 1][pow(2,n) + 1];
      |                               ~~~~~~~~~^~~
a.cc:69:40: error: could not convert '(std::pow<int, long long int>(2, n) + (__gnu_cxx::__promote<double, false>::__type)1)' from '__gnu_cxx::__promote<double>::__type' {aka 'double'} to 'long unsigned int'
   69 |         ll grid[pow(2,m) + 1][pow(2,n) + 1];
      |                               ~~~~~~~~~^~~
      |                                        |
      |                                        __gnu_cxx::__promote<double>::__type {aka double}
a.cc:69:40: error: size of array 'grid' has non-integral type '__gnu_cxx::__promote<double>::__type' {aka 'double'}
a.cc:69:26: error: conversion from '__gnu_cxx::__promote<double>::__type' {aka 'double'} to 'long unsigned int' in a converted constant expression
   69 |         ll grid[pow(2,m) + 1][pow(2,n) + 1];
      |                 ~~~~~~~~~^~~
a.cc:69:26: error: could not convert '(std::pow<int, long long int>(2, m) + (__gnu_cxx::__promote<double, false>::__type)1)' from '__gnu_cxx::__promote<double>::__type' {aka 'double'} to 'long unsigned int'
   69 |         ll grid[pow(2,m) + 1][pow(2,n) + 1];
      |                 ~~~~~~~~~^~~
      |                          |
      |                          __gnu_cxx::__promote<double>::__type {aka double}
a.cc:69:26: error: size of array 'grid' has non-integral type '__gnu_cxx::__promote<double>::__type' {aka 'double'}