//#define _GLIBCXX_DEBUG #include <bits/stdc++.h> #include <atcoder/modint> #include <atcoder/dsu> #include <boost/rational.hpp> using namespace std; using namespace atcoder; using ll = long long; using mint = modint998244353; const double pi = 3.14159265359879323846264338327950288419; const ll INF = 9 * 1e18; using p = pair<ll, ll>; int main() { ll n, k; cin >> n >> k; vector<ll> a(n); for(int i = 0; i < n; i++) cin >> a[i]; vector<ll> tmp(n); for(int i = 0; i < k; i++) tmp[i]++; sort(tmp.begin(), tmp.end()); vector<ll> v; do{ ll sum = 0; for(int i = 0; i < n; i++){ if(tmp[i]) sum += a[i]; } v.push_back(sum); }while(next_permutation(tmp.begin(), tmp.end())); ll cnt = 0; for(auto x : v){ if(x % 998244353 <= x % 998) cnt++; } cout << cnt % 998 << endl; }