#include <bits/stdc++.h>
using namespace std;
#define ll long long
set<ll> s;
const ll mod=1145141923;
int main()
{
ll n,m;
ll ans=1;
cin>>n>>m;
if(n>m) cout<<0;return 0;
ll f=0;
for(int i=1;i<=n;i++)
{
int x;
cin>>x;
if(x==0) f++;
else{
auto r= s.insert(x);
if(r.second==0) {
cout<<0;return 0;
}
}
}
ll d=m-s.size();
while(f)
{
if(d<0)
{
cout<<0;
return 0;
}
ans*=d%mod;
d--;
f--;
}
cout<<ans;
return 0;
}
是否是 set 用的不太妥当