JavaScript (ES6), 63 байти, SLuck49
Оригінал:
x=>eval(atob`eCp4KzEvLyAgfXBModLS4TvEn4wp1iys9YRRKC85KLIhNMC=`)
Тріщина:
x=>eval(atob`CgpNYXRoLnBvdyh4LTEsMC41KSAvLw4589CEIKKMRefipyz=`)
Код base64 вище декодує для:
Math.pow(x-1,0.5) //...
де ...стоїть купа випадкового сміття, яке ігнорується перекладачем JS, оскільки це в коментарі.
Я знайшов це рішення шляхом спроб та помилок. Зрештою, тільки на самому ділі складна частина були дві нових рядків на початку коду, потрібно зробити інше лінії правильно і отримати Mв Mathдо base64-кодування в те , що було доступно в вихідному наборі символів. Я спершу спробував пробіли, але " M"base64-кодує, "ICBN"і мені знадобився єдиний доступний Bдля кодування ".po"пізніше код. "0+M", "1*M", "1?M"Або будь-які інші подібні до них не-оп префікси я міг думати не вийшли, але переклади рядка зробили.
Я підозрюю, що це може бути не саме намічене рішення, але все, що він працює. :)
Демонстрація:
var f = x=>eval(atob`eCp4KzEvLyAgfXBModLS4TvEn4wp1iys9YRRKC85KLIhNMC=`)
var g = x=>eval(atob`CgpNYXRoLnBvdyh4LTEsMC41KSAvLw4589CEIKKMRefipyz=`)
for (var i = -0; i <= 10; i++) console.log(i, '->', f(i), '->', g(f(i)))