N^M乗の全探索です
#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
int N, M;
int flag[M];
void dfs(int C){
if (C == M){
//処理
}
rep(i, N){
flag[C] = i;
dfs(C + 1);
}
}
signed main(){
cin >> N >> M;
dfs(0);
}