#include <bits/stdc++.h>
using namespace std;
#define endl '\n'
int main()
{
long long n, indprc, ind2prc, price, minprc, min2prc, d, cnt = 0;
unsigned long long plat[10], harga[10] ;
memset(plat,0,sizeof(plat));
cin >> n;
cin >> price;
harga[0] = price;
minprc = price;
indprc = 0;
for (long long i = 1;i <= n;i++) {
cin >> price;
harga[i] = price;
if (price <= minprc) {
minprc = price;
indprc = i;
}
}
cin >> d;
// kalau uangnya gacukup gajadi beli
if (minprc > d) {
cout << 0 << endl;
return 0;
}
min2prc = harga[n];
ind2prc = n;
// beli yang termurah dan bukan nol
if (indprc == 0) {
for (long long i = n-1;i >= 1 ;i--) {
if (harga[i] < min2prc) {
min2prc = harga[i];
ind2prc = i;
}
}
if (d - min2prc >= 0){
d -= min2prc;
plat[ind2prc]++;
cnt++;
}
else ind2prc = 0;
}
if (ind2prc){
// beli yang termurah
plat[indprc] += (d / minprc);
cnt += (d / minprc);
d %= minprc;
// kalau bisa tuker yang lebih besar ya tukar
for (int i = indprc; i <= n ; i++) {
for (int j = n; j >= i+1 ;j--) {
if (plat[i] > 0 && d + harga[i] - harga[j] >= 0) {
if (harga[j] == harga[i]) {
plat[j] += plat[i];
plat[i] = 0;
}
else {
plat[j] += d / (harga[j] - harga[i]);
plat[i] -= d / (harga[j] - harga[i]);
d %= (harga[j] - harga[i]) ;
}
break;
}
}
}
}
// bagian ngeprint
if (ind2prc == 0) cnt = 1;
cout << cnt << endl;
if (ind2prc == 0) {
cout << 0 << endl;
cout << 0 << endl;
}
else {
long long hit = 0;
string dep;
for (int i = n; i>=0; i--) {
while (plat[i]>0){
dep += to_string(i);
cout << i;
plat[i]--;
hit++;
if (dep.length() == 50) break;
}
if (dep.length() == 50) break;
}
cout << endl;
if (cnt <= 50) cout << dep;
else {
hit = 0;
for (int i = 0; i<=n; i++) {
while (plat[i]>0){
cout << i;
plat[i]--;
hit++;
if (hit == 50) break;
}
if (hit == 50) break;
}
}
cout << endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgZW5kbCAnXG4nCgppbnQgbWFpbigpCnsKCWxvbmcgbG9uZyBuLCBpbmRwcmMsIGluZDJwcmMsIHByaWNlLCBtaW5wcmMsIG1pbjJwcmMsIGQsIGNudCA9IDA7Cgl1bnNpZ25lZCBsb25nIGxvbmcgcGxhdFsxMF0sIGhhcmdhWzEwXSA7CgltZW1zZXQocGxhdCwwLHNpemVvZihwbGF0KSk7CgljaW4gPj4gbjsKCWNpbiA+PiBwcmljZTsKCWhhcmdhWzBdID0gcHJpY2U7CgltaW5wcmMgPSBwcmljZTsKCWluZHByYyA9IDA7Cglmb3IgKGxvbmcgbG9uZyBpID0gMTtpIDw9IG47aSsrKSB7CgkJY2luID4+IHByaWNlOwoJCWhhcmdhW2ldID0gcHJpY2U7CgkJaWYgKHByaWNlIDw9IG1pbnByYykgewoJCQltaW5wcmMgPSBwcmljZTsKCQkJaW5kcHJjID0gaTsKCQl9Cgl9CgljaW4gPj4gZDsKCgkvLyBrYWxhdSB1YW5nbnlhIGdhY3VrdXAgZ2FqYWRpIGJlbGkKCWlmIChtaW5wcmMgPiBkKSB7CgkJY291dCA8PCAwIDw8IGVuZGw7CgkJcmV0dXJuIDA7Cgl9CgltaW4ycHJjID0gaGFyZ2Fbbl07CglpbmQycHJjID0gbjsKCgkvLyBiZWxpIHlhbmcgdGVybXVyYWggZGFuIGJ1a2FuIG5vbAoJaWYgKGluZHByYyA9PSAwKSB7CgkJZm9yIChsb25nIGxvbmcgaSA9IG4tMTtpID49IDEgO2ktLSkgewoJCQlpZiAoaGFyZ2FbaV0gPCBtaW4ycHJjKSB7CgkJCQltaW4ycHJjID0gaGFyZ2FbaV07CgkJCQlpbmQycHJjID0gaTsKCQkJfQoJCX0KCQlpZiAoZCAtIG1pbjJwcmMgPj0gMCl7CgkJCWQgLT0gbWluMnByYzsKCQkJcGxhdFtpbmQycHJjXSsrOwoJCQljbnQrKzsKCQl9CgkJZWxzZSBpbmQycHJjID0gMDsKCX0KCWlmIChpbmQycHJjKXsKCgkJLy8gYmVsaSB5YW5nIHRlcm11cmFoCgkJcGxhdFtpbmRwcmNdICs9IChkIC8gbWlucHJjKTsKCQljbnQgKz0gKGQgLyBtaW5wcmMpOwoJCWQgJT0gbWlucHJjOwoKCQkvLyBrYWxhdSBiaXNhIHR1a2VyIHlhbmcgbGViaWggYmVzYXIgeWEgdHVrYXIKCQlmb3IgKGludCBpID0gaW5kcHJjOyBpIDw9IG4gOyBpKyspIHsKCQkJZm9yIChpbnQgaiA9IG47IGogPj0gaSsxIDtqLS0pIHsKCQkJCWlmIChwbGF0W2ldID4gMCAmJiBkICsgaGFyZ2FbaV0gLSBoYXJnYVtqXSA+PSAwKSB7CgkJCQkJaWYgKGhhcmdhW2pdID09IGhhcmdhW2ldKSB7CgkJCQkJCXBsYXRbal0gKz0gcGxhdFtpXTsKCQkJCQkJcGxhdFtpXSA9IDA7CgkJCQkJfQoJCQkJCWVsc2UgewoJCQkJCQlwbGF0W2pdICs9IGQgLyAoaGFyZ2Fbal0gLSBoYXJnYVtpXSk7CgkJCQkJCXBsYXRbaV0gLT0gZCAvIChoYXJnYVtqXSAtIGhhcmdhW2ldKTsKCQkJCQkJZCAlPSAoaGFyZ2Fbal0gLSBoYXJnYVtpXSkgOwoJCQkJCX0KCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCX0KCX0KCS8vIGJhZ2lhbiBuZ2VwcmludAoJaWYgKGluZDJwcmMgPT0gMCkgY250ID0gMTsKCWNvdXQgPDwgY250IDw8IGVuZGw7CglpZiAoaW5kMnByYyA9PSAwKSB7CgkJY291dCA8PCAwIDw8IGVuZGw7CgkJY291dCA8PCAwIDw8IGVuZGw7Cgl9CgllbHNlIHsKCQlsb25nIGxvbmcgaGl0ID0gMDsKCQlzdHJpbmcgZGVwOwoJCWZvciAoaW50IGkgPSBuOyBpPj0wOyBpLS0pIHsKCQkJd2hpbGUgKHBsYXRbaV0+MCl7CgkJCQlkZXAgKz0gdG9fc3RyaW5nKGkpOwoJCQkJY291dCA8PCBpOwoJCQkJcGxhdFtpXS0tOwoJCQkJaGl0Kys7CgkJCQlpZiAoZGVwLmxlbmd0aCgpID09IDUwKSBicmVhazsKCQkJfQoJCQlpZiAoZGVwLmxlbmd0aCgpID09IDUwKSBicmVhazsKCQl9CgkJY291dCA8PCBlbmRsOwoJCWlmIChjbnQgPD0gNTApIGNvdXQgPDwgZGVwOwoJCWVsc2UgewoJCQloaXQgPSAwOwoJCQlmb3IgKGludCBpID0gMDsgaTw9bjsgaSsrKSB7CgkJCQl3aGlsZSAocGxhdFtpXT4wKXsKCQkJCQljb3V0IDw8IGk7CgkJCQkJcGxhdFtpXS0tOwoJCQkJCWhpdCsrOwoJCQkJCWlmIChoaXQgPT0gNTApIGJyZWFrOwoJCQkJfQoJCQkJaWYgKGhpdCA9PSA1MCkgYnJlYWs7CgkJCX0KCQl9CgkJY291dCA8PCBlbmRsOwoJfQoJcmV0dXJuIDA7Cn0=