Уровень The Wizards Doors - не проходится


#1

Уровень The Wizards Doors

никак не могу его пройти. Прошу вас, меня проверить.

Эти данные работают только, если секретное число 3. Но последний маг меня убивет.

  1. Первый маг говорит прибавь 3+7 и иди скажи второму магу;
  2. Говорю ему ответ 10, через формулу суммы; Он говорит иди скажи третьему магу это число деленное на 4;
  3. Говорю ему ответ 2.5, через формулу деления. Он говорит иди скажи четвертому магу это число умноженное на секретную цифру (3);
  4. Говорю ему ответ 7.5, через формулу умножения. Он меня убивает;

А. почему третий маг меня пропускает только, если секретное число 3, если другое рандомное число, он меня убивает. Формулы ведь не меняются.
Б. Почему меня убивает четвертый маг.

// Move to Laszlo and get his secret number.
hero.moveXY(30, 13);
var las = hero.findNearestFriend().getSecret();

// Add 7 to Laszlo’s number to get Erzsebet’s number.
// Move to Erzsebet and say her magic number.
var erz1 = las + 7;
hero.moveXY(17, 26);
hero.say(erz1);

// Divide Erzsebet’s number by 4 and take the remainder to get Simonyi’s number.
// Go to Simonyi and tell him his number.
hero.moveXY(30, 39);
var erz2 = erz1 / 4;
hero.say(erz2);
// Multiply Simonyi’s number by Laszlo’s to get Agata’s number.
// Go to Agata and tell her her number.
hero.moveXY(43, 26);
var erz3 = erz2 * las;
hero.say(erz3);
hero.moveXY(31, 27);


#2

В итоге: я ее прошел, с помощью подгонки.

  1. Выждал когда секретное число будет “6”
  2. Второго мага суммой проходим сумма (6+7) = 13
  3. Идем к третьему магу, ему ответ прописал просто “1”. Почему? я не понимаю.
  4. Идем к четвертому магу, ему ответ прописал просто “6”. Ну тут понятно, 6*1 = 6

// Move to Laszlo and get his secret number.
hero.moveXY(30, 13);
var las = hero.findNearestFriend().getSecret();

// Add 7 to Laszlo’s number to get Erzsebet’s number.
// Move to Erzsebet and say her magic number.
var erz1 = las + 7;
hero.moveXY(17, 26);
hero.say(erz1);

// Divide Erzsebet’s number by 4 and take the remainder to get Simonyi’s number.
// Go to Simonyi and tell him his number.
hero.moveXY(30, 39);
hero.say(“1”);
// Multiply Simonyi’s number by Laszlo’s to get Agata’s number.
// Go to Agata and tell her her number.
hero.moveXY(43, 26);
hero.say(“6”);
hero.moveXY(31, 27);


#3

А следующая миссия The Wizards Haunt, проходится легко, через формулы. Без подгонки.


#4

Мой код для сравнения на момент прохождения был такой.
https://github.com/vadim-job-hg/CodeCombat/blob/master/Forest/TheWizardsDoor.py


#5

Второй шаг - остаток от деления суммы на 4. То есть (6+7)%4=13%4=1


#6

Divide Erzsebet’s number by 4 and take the remainder to get Simonyi’s number.

Go to Simonyi and tell him his number.

sim = erz % 4