const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;
void (async function () {
const [m, n, k] = (await readline()).split(" ").map(Number);
const x = parseInt(await readline());
const shouHinns = [];
const ans = [];
for (let i = 0; i < x; i++) {
shouHinns.push(parseInt(await readline()));
let ans = [];
}
shouHinns.forEach((shouHinn) => {
const kennMN = helper({ gold: shouHinn, kenn: 1, num1: m })[1] + 1;
const goldMN = helper({
gold: helper({ gold: shouHinn, kenn: 1, num1: m })[0],
kenn: 2,
});
const goldNM = helper({
gold: helper({ gold: shouHinn, kenn: 2 }),
kenn: 1,
num1: m,
})[0];
const kennMK = helper({ gold: shouHinn, kenn: 1, num1: m })[1] + k;
const goldMK = helper({
gold: helper({ gold: shouHinn, kenn: 1, num1: m })[0],
kenn: 3,
num3: k,
});
const goldKM = helper({
gold: helper({ gold: shouHinn, kenn: 3, num3: k }),
kenn: 1,
num1: m,
})[0];
const kennNK = k + 1;
const goldNK = helper({
gold: helper({ gold: shouHinn, kenn: 2 }),
kenn: 3,
num3: k,
});
const goldKN = helper({
gold: helper({ gold: shouHinn, kenn: 3, num3: k }),
kenn: 2,
});
const arr = [
[goldMN, kennMN],
[goldNM, kennMN],
[goldMK, kennMK],
[goldKM, kennMK],
[goldNK, kennNK],
[goldKN, kennNK],
];
arr.sort((a, b) => {
if (a[0] == b[0]) return a[1] - b[1];
return a[0] - b[0];
});
console.log(arr);
ans.push(arr[0]);
});
for (let i = 0; i < ans.length; i++) {
console.log(ans[i][0] + " " + ans[i][1]);
}
})();
const helper = ({ gold, kenn, num1 = 1, num3 = 1 }) => {
if (!kenn) return gold;
else {
switch (kenn) {
case 1:
let k = 1;
let kinn = gold;
while (k <= num1 && Math.floor(kinn / 100) > 0) {
kinn = kinn - Math.floor(kinn / 100) * 10;
k++;
}
return [kinn, k];
case 2:
return Math.floor(gold * 0.92);
case 3:
return gold - 5 * num3;
}
}
};