MOD=998244353 N,M=map(int,input().split()) A=list(map(int,input().split())) flp=[A[0]] for i in range(N-1): if A[i]==A[i+1]: flp.append(0) else: flp.append(1) flp.append(A[-1]) dp=[0]*(N+2) dp[sum(flp)]=1 for i in range(M): ndp=[0]*(N+2) for j in range(N+2): dp[j]%=MOD if dp[j]==0: continue one=j zero=N+1-j ndp[j]+=one*zero*dp[j] if zero>=2: ndp[j+2]+=zero*(zero-1)*dp[j]//2 if one>=2: ndp[j-2]+=one*(one-1)*dp[j]//2 dp=ndp print(dp[0]%MOD)