// C
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define bint __int128
#define _3bkarm cin.tie(NULL); cout.tie(NULL); ios::sync_with_stdio(false);
int power(int a, int p, int mod) {
if (p % 2 == 0) return 1;
return mod - 1;
}
void getShitDone() {
int b, l;
cin >> b >> l;
int m = 0;
vector<int> d(l), v(l);
for (int i = l - 1; i >= 0; --i) {
cin >> d[i];
v[i] = power(b, i, b + 1) * d[i] % (b + 1);
m += v[i], m %= (b + 1);
}
if (m == 0) {
cout << 0 << ' ' << 0;
return;
}
vector<int> pref = v;
vector<int> suf = v;
for (int i = 1; i < l; ++i) {
pref[i] += pref[i - 1];
pref[i] %= (b + 1);
}
for (int i = l - 2; i >= 0; --i) {
suf[i] += suf[i + 1];
suf[i] %= (b + 1);
}
vector<int> to(b + 1);
for (int i = 0; i <= b; ++i) {
to[(b * i) % (b + 1)] = i;
}
for (int i = l - 1, out = 1; i >= 0; --i, ++out) {
int t = 0;
if (i + 1 < l) t += suf[i + 1], t %= (b + 1);
if (i - 1 >= 0) t += pref[i - 1], t %= (b + 1);
t = ( (b + 1) - t ) % (b + 1);
int u = power(b, i, b + 1);
if (u == 1) {
if (t <= d[i]) {
cout << out << ' ' << t;
return;
}
} else if (to[t] <= d[i]) {
cout << out << ' ' << to[t];
return;
}
}
cout << -1 << ' ' << -1;
}
signed main() {
_3bkarm
int ts = 1;
// cin >> ts;
while (ts--) getShitDone();
return 0;
}
Ly8gQwojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGludCBsb25nIGxvbmcKI2RlZmluZSBiaW50IF9faW50MTI4CiNkZWZpbmUgXzNia2FybSBjaW4udGllKE5VTEwpOyBjb3V0LnRpZShOVUxMKTsgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwoKaW50IHBvd2VyKGludCBhLCBpbnQgcCwgaW50IG1vZCkgewogICAgaWYgKHAgJSAyID09IDApIHJldHVybiAxOwogICAgcmV0dXJuIG1vZCAtIDE7Cn0KCnZvaWQgZ2V0U2hpdERvbmUoKSB7CiAgICBpbnQgYiwgbDsKICAgIGNpbiA+PiBiID4+IGw7CgogICAgaW50IG0gPSAwOwogICAgdmVjdG9yPGludD4gZChsKSwgdihsKTsKICAgIGZvciAoaW50IGkgPSBsIC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICBjaW4gPj4gZFtpXTsKICAgICAgICB2W2ldID0gcG93ZXIoYiwgaSwgYiArIDEpICogZFtpXSAlIChiICsgMSk7CiAgICAgICAgbSArPSB2W2ldLCBtICU9IChiICsgMSk7CiAgICB9CgogICAgaWYgKG0gPT0gMCkgewogICAgICAgIGNvdXQgPDwgMCA8PCAnICcgPDwgMDsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgdmVjdG9yPGludD4gcHJlZiA9IHY7CiAgICB2ZWN0b3I8aW50PiBzdWYgPSB2OwoKICAgIGZvciAoaW50IGkgPSAxOyBpIDwgbDsgKytpKSB7CiAgICAgICAgcHJlZltpXSArPSBwcmVmW2kgLSAxXTsKICAgICAgICBwcmVmW2ldICU9IChiICsgMSk7CiAgICB9CiAgICBmb3IgKGludCBpID0gbCAtIDI7IGkgPj0gMDsgLS1pKSB7CiAgICAgICAgc3VmW2ldICs9IHN1ZltpICsgMV07CiAgICAgICAgc3VmW2ldICU9IChiICsgMSk7CiAgICB9CgogICAgdmVjdG9yPGludD4gdG8oYiArIDEpOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPD0gYjsgKytpKSB7CiAgICAgICAgdG9bKGIgKiBpKSAlIChiICsgMSldID0gaTsKICAgIH0KCiAgICBmb3IgKGludCBpID0gbCAtIDEsIG91dCA9IDE7IGkgPj0gMDsgLS1pLCArK291dCkgewogICAgICAgIGludCB0ID0gMDsKICAgICAgICBpZiAoaSArIDEgPCBsKSB0ICs9IHN1ZltpICsgMV0sIHQgJT0gKGIgKyAxKTsKICAgICAgICBpZiAoaSAtIDEgPj0gMCkgdCArPSBwcmVmW2kgLSAxXSwgdCAlPSAoYiArIDEpOwogICAgICAgIHQgPSAoIChiICsgMSkgLSB0ICkgJSAoYiArIDEpOwogICAgICAgIGludCB1ID0gcG93ZXIoYiwgaSwgYiArIDEpOwogICAgICAgIGlmICh1ID09IDEpIHsKICAgICAgICAgICAgaWYgKHQgPD0gZFtpXSkgewogICAgICAgICAgICAgICAgY291dCA8PCBvdXQgPDwgJyAnIDw8IHQ7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKHRvW3RdIDw9IGRbaV0pIHsKICAgICAgICAgICAgY291dCA8PCBvdXQgPDwgJyAnIDw8IHRvW3RdOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgfQogICAgY291dCA8PCAtMSA8PCAnICcgPDwgLTE7Cn0KCnNpZ25lZCBtYWluKCkgewogICAgXzNia2FybQoKICAgIGludCB0cyA9IDE7Ci8vICAgIGNpbiA+PiB0czsKICAgIHdoaWxlICh0cy0tKSBnZXRTaGl0RG9uZSgpOwoKICAgIHJldHVybiAwOwp9