Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #41 (permalink)  
Старый 06.05.2018, 14:55
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от Alexandroppolus
пропатчить некоторые встроенные функции.
лучше не привыкать
Ответить с цитированием
  #42 (permalink)  
Старый 06.05.2018, 14:56
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Alexandroppolus,
какие преимущества быть в каком либо клане???
Ответить с цитированием
  #43 (permalink)  
Старый 06.05.2018, 15:16
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

Сообщение от j0hnik Посмотреть сообщение
лучше не привыкать
в той ситуации выбора не было
Ответить с цитированием
  #44 (permalink)  
Старый 06.05.2018, 15:21
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

Сообщение от j0hnik Посмотреть сообщение
Alexandroppolus,
какие преимущества быть в каком либо клане???
никаких
мне дали ссылку на этот сайт на работе, ну я и вступил, чтобы была соревновательность со знакомыми людьми, а не какими-то неизвестными персонажами (с помощью клана всех сразу видно). Потом все клановые быстро забили, я по инерции ещё немного порешал то что казалось интересным и незамороченным, и тоже забил.

сейчас, оглядываясь назад, из того что решил могу вспомнить интересных задач только штук 5-7...
Ответить с цитированием
  #45 (permalink)  
Старый 06.05.2018, 18:27
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Alexandroppolus,

const solution = new RegExp('.');
var str = solution.test.toString();
solution.test = function(x) { /* тут любое решение )) */ };
solution.test.toString = function() { return str; };


как этой фишкой пользоваться?
Ответить с цитированием
  #46 (permalink)  
Старый 06.05.2018, 21:41
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

j0hnik,
ты про задачу с делимостью на 7?

вместо /* тут любое решение )) */ написать что-то вроде

return !(parseInt(x, 2) % 7)


Тут косяк автора вот в чем: он хочет от игрока регулярку, которой проверяет строку (методом test). А мы тупо берем и заменяем этот метод своей функцией. Чтобы такое не прокатило, автор теста проверяет результат test.toString(), но мы и toString переопределили.

Самый правильный подход - получать от игрока строку. Проверять что это строка (typeof) и по ней создавать регекс. При этом предварительно сохранить метод test из RegExp.prototype, и сам конструктор RegExp, потом это всё использовать. Тогда юзер нигде ничего не перепишет и будет вынужден честно упороться и таки написать регулярку.
Ответить с цитированием
  #47 (permalink)  
Старый 06.05.2018, 21:50
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Alexandroppolus,
это я написал, чтоб тестировать проще было

надеялся что мухлевать никто не будет

https://www.codewars.com/kata/regula...ain/javascript
Ответить с цитированием
  #48 (permalink)  
Старый 04.08.2018, 02:23
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Интересная ката 6kyu (новичок+)
Нужно найти во входном массиве (от 1 до n) пропущенные числа и вернуть их новый массив в порядке возрастания.

[8, 10, 11, 7, 3, 15, 6, 1, 14, 5, 12] ---> [2, 4, 9, 13]

ВАЖНО[!] решение должно быть скоростным, проверка на огромных массивами, с редкими пропусками.

Последний раз редактировалось j0hnik, 04.08.2018 в 02:58.
Ответить с цитированием
  #49 (permalink)  
Старый 04.08.2018, 10:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

j0hnik,
<script>
function fn(b) {
    for (var c = [], a = 0; a < b.length; a++) c[b[a]] = true;
    b = [];
    for (a = 1; a < c.length; a++) c[a] || b.push(a);
    return b
};
var a =  [8, 10, 11, 7, 3, 15, 6, 1, 14, 5, 12] ;
    a = fn(a);
document.write(JSON.stringify(a, null, 4))
</script>
Ответить с цитированием
  #50 (permalink)  
Старый 04.08.2018, 10:33
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

рони,
Такой была моя первая попытка, только я чиcла пушил,
var x = c[b[a]];
c[x] = x;

кодварс ответил мне: "Хей! бро, не, ты меня не понял, нужно ОЧЕНЬ быстрое решение!"

Последний раз редактировалось j0hnik, 04.08.2018 в 10:36.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тестовое задание Yandex xShift Общие вопросы Javascript 22 17.02.2018 21:53
Задание с SIP heeel Firefox/Mozilla 0 12.06.2017 01:12
Интересное задание "Поединок" помогите решить Anton27 Общие вопросы Javascript 2 23.05.2017 22:24
Тестовое задание. Дайте идею. FINoM Оффтопик 14 28.03.2011 10:09
Помогите сделать тестовое задание начального уровня по js makregistr Работа 1 16.12.2010 14:26