#include<bits/stdc++.h>usingnamespace std;structRandomNumberGenerator{private:unsignedlonglong state;staticconstexprunsignedlonglong a =6364136223846793005ULL;staticconstexprunsignedlonglong c =1442695040888963407ULL;unsignedlonglong k;
vector<unsignedlonglong> p;public:explicitRandomNumberGenerator(unsignedlonglongseed,unsignedlonglongk_,const vector<unsignedlonglong>&p_):state(seed),k(k_),p(p_){if(k >32) k =32;if(p.size()<static_cast<size_t>(k)){
p.resize(k,0);}}unsignedlonglongnext(){
state = state * a + c;return state;}unsignedlonglongoperator()(){unsignedlonglong result =0;for(unsignedlonglong i =0; i < k; i++){unsignedlonglong rand_val =next();if(rand_val < p[i]){
result |=(1ULL<< i);}}return result;}};signedmain(){ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);int n,k,seed;
cin>>n>>k>>seed;
vector<unsignedlonglong>p(k);
vector<int>A(n+1);for(int i=0;i<k;i++)cin>>p[i];
RandomNumberGenerator rnd(seed,k,p);for(int i=1;i<=n;i++)A[i]=rnd();}