19.04.2018, 02:29
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
уровень сложности 6Kyu (новичок+)
нужно дописать функцию которая возводит каждую цифру в квадрат
sd=x=>ваш код;
1) ваш код : не может превышать 30 символов
вход/выход
sd(0)=> 0
sd(64)=> 3616
sd(1111)=> 1111
sd(2222)=> 4444
sd(3333)=> 9999
sd(3212)=> 9414
sd(1234)=> 14916
sd(77455754)=> 4949162525492516
sd(99999999)=> 8181818181818181
решений множество
на входе - выходе Number
Последний раз редактировалось j0hnik, 19.04.2018 в 02:32.
|
|
19.04.2018, 04:29
|
|
Профессор
|
|
Регистрация: 19.01.2012
Сообщений: 505
|
|
sd=x=>+[...x+""].map(n=>n*n).join("") //если убрать плюс в начале, то уложится в 30 символов, но результат будет строкой, а не Number
//sd=x=>+[...x+""].reduce((s,n)=>s+n*n,"") //так длиннее получается
function test(n, res){
var r = sd(n);
console.log('sd('+n+')='+r+'; ', r===res);
}
test(64, 3616)
test(1111, 1111)
test(2222, 4444)
test(3333, 9999)
test(3212, 9414)
test(1234, 14916)
test(77455754, 4949162525492516)
test(99999999, 8181818181818181)
Сообщение от рони
|
Белый шум, ещё раз поздравляю!!!
|
Сообщение от j0hnik
|
О ВЕЛИКИЙ БЕЛЫЙ ШУМ! Красавчег!
|
Перехвалили %)
|
|
19.04.2018, 04:39
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
Белый шум,
решается даже в 28
|
|
19.04.2018, 07:13
|
|
Профессор
|
|
Регистрация: 19.01.2012
Сообщений: 505
|
|
Сообщение от j0hnik
|
решается даже в 28
|
Уговорил, шайтан %)
sd=x=>+(x+"").replace(/./g,n=>n*n)
function test(n, res){
var r = sd(n);
console.log('sd('+n+')='+r+'; ', r===res);
}
test(64, 3616)
test(1111, 1111)
test(2222, 4444)
test(3333, 9999)
test(3212, 9414)
test(1234, 14916)
test(77455754, 4949162525492516)
test(99999999, 8181818181818181)
|
|
20.04.2018, 05:56
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
уровень сложности 2Kyu (Бородатый кодер)
Создайте регулярное выражение, способное оценивать двоичные строки (которые состоят только из 1 и 0) и определять, является ли данная строка числом, делящимся на 7.
function regexp(bin){
const solution = /ваш код/;
var dec = parseInt(bin,2);
return solution.test(bin)+' => '+dec+'/7='+dec/7;
}
console.log(regexp('110001'));
для тех кто шарит в регулярках и двоичном коде.
Alexandroppolus если решали сразу не подсказывайте.
|
|
20.04.2018, 14:03
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Сообщение от j0hnik
|
Alexandroppolus если решали сразу не подсказывайте.
|
не, эту не решал. Я решал про делимость на 3 (ссылка на пред. странице), там уже указан конечный автомат, надо просто его зарегексить.
Здесь ещё КА придумать надо, или найти )
Кстати, 'Anti-cheat tests' здесь хреновые, пример того как не надо делать. Вот такой вариант нечестного решения прокатывает:
const solution = new RegExp('.');
var str = solution.test.toString();
solution.test = function(x) { /* тут любое решение )) */ };
solution.test.toString = function() { return str; };
|
|
20.04.2018, 16:41
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
Alexandroppolus,
Не натыкались там на задачку где нужно взломать 32-х битный ключ, который меняется каждые 12 сек? как такие решаются?
|
|
20.04.2018, 16:43
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
j0hnik,
дай ссылку, гляну
там всякие бывают, некоторые хрен поймешь как делать
|
|
20.04.2018, 16:56
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
|
|
20.04.2018, 16:57
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
Alexandroppolus,
Какой у вас там Kuy ?
|
|
|
|