JS-гуру возмущен неоплаченным тестовым

Intetics не дала соискателю фидбек на тестовое задание.

Пишет Анонимус: «Здравствуй, ебаная редакция и не менее ебаные читатели!
Наткнулся сегодня в ленте LinkedIn на публичную жалобу к украинской галерку по причине отсутствия ответа на присланное тестовое.

В Intetics требуют выполнить унизительные тестовые задания.

Выглядит как солидная предъява возмущенного и очень занятого разработчика, мол паразитируют на его тестовом, он целых 15 часов потратил.

Заходим на GitHub (https://github.com/hirdbluebird/Intetics), видим задание, уже становится интереснее:

Напишите программу, которая возвращает наибольшее число палиндром, которое является произведением двух простых пятизначных чисел, а также возвращает сами сомножители. Простое число — это натуральное число, которое делится нацело только на 1 и на себя само (2, 3, 5, 7, 11, …) Палиндром – строка, которая читается одинаково в обоих направлениях (например ABBA)

Кульминация настанет если открыть код. Мало того, что он тупо перебирает все возможные варианты самым тупым циклом и забивает память непойми зачем, задание вообще выполнено неправильно. И выполняется целых 4 минуты на промежутке от 10000 до 100000. (15 часов затраченного времени, карл!)

Да, компания явно не права, что сразу не ответила «вы долбоеб и нам не подходите», но аутизму парня можно позавидовать: заявляться с таким тестовым на серьезных щщах — это ебаная суперспособность».

Прислал Анонимус

Комментарий ебаной редакции

Странно, что Евгений вообще взялся за высосанное из пальца задание и не послал контору прямиком по адресу. Когда дают тестовые на полдня-день — это тошно. Но если дают задание хоть примерно по теме того, чем будешь заниматься — в этом смысла в 100 крат больше. Во-первых, тимлид-кнутовед сразу может отдаленно прикинуть, как товарищ будет справляться с задачами, необходимыми для проекта. Во-вторых, сам гребец примерно поймет чем ему предстоит заниматься на галере. Выдумывать всякую абстрактную поебень вроде FizzBuzz — тратить драгоценную возможность увидеть потенциального кандидата в реальных, а не песочных условиях. Что же касается соискателей, то их такая мелочность лишь раздражает, так как не несет в себе никакого смысла. Но наплыв вайтишников делает свое дело — в итоге всё больше разрабов соглашаются на унизительные тестовые, которые не только занимают много времени, но и опускают на грешную землю — даже если ты опытная веб-макака, тебя всё равно можно унизить еще даже перед собеседованием.

209 Комментариев

  1. АнтиЖук:

    Кому первый защекоин?

    5

    28
    • Уважаемый$$$:

      Привет ты че охуел

      22

      1
      • Посыстрым:

        Я вам не скажу за всю Одессу,
        Но понадусэшная пиздота обожает Надю Савченко!

        Так, я хэрой — я воюваф, а ты дэ буфф? На пэрэдку буфф, сука москальська?

        14

        61
        • Уважаемый$$$:

          Привет ты че охуел

          22

          1
          • Капитан Сиська:

            Я надеюсь он там хоть с конца перебирает? От 99999 до 10000?

            9

            4
            • Капитан Сиська:

              Вообще это очень простая задача. Во первых, надо во вложенном цикле перемножить все числа в диапазоне от 10000 до 99999 и сохранить в массив. Затем следует выбрать из этого массива все палиандромы, для чего во в двух вложенных циклах перебрать весь массив чисел и выбрать те, в которых есть совпадения первой половины со второй. Затем полученные числа в двух вложенных циклах делить на числа в диапазоне от 10000 до 99999. Полученные сохранять в массив. Затем выбрать из массива те, что поделились без остатка, то есть не имеют дробной части. Затем перебрать полученные числа, деля их при этом последовательно от 1 и до самого числа. Те, что поделились только на себя и на единицу, считать простыми. После чего найти максимальные числа. И готов ответ!…)))

              15

              11
              • HR Intetics Inc.:

                Мы не берём тебя на работу, и знаешь почему? Да потому что ты сожрал всю память. Не умеешь писать не пиши. И забудь про IT.

                63

                2
                • Капитан Сиська:

                  Я наконец -то придумал, как мой алгоритм можно улучшить. Искомое произведение — не является простым числом по определению. Значит надо начинать с отсева простых чисел в диапазоне от 10000 * 10000 до 99999 * 99999…)))

                  5

                  1
              • Aen Saevherne:

                Еще один говнокодер
                >> Затем полученные числа в двух вложенных циклах делить на числа в диапазоне от 10000 до 99999.
                Во-первых, сначала умножать, а потом делить снова перебором идея так себе. Во-вторых, ты так рискуешь отобрать палиндромы которые являются произведением простого и не простого, к тому же тебе нужны оба множителя, а ты во второй массив (на этом моменте тебе уже нужно разбить ебало) записываешь только частное
                А по сути — перебирать нужно в диапазоне от 99999 до 10001 только по нечетным, и делить на все числа в диапазоне от 3 до округленного квадратного корня числа с шагом 2 (тоже по нечетным). А уже найденные таким способом записывать в ма… в список, и при нахождении нового, поочередно умножать его на каждый элемент (начиная с большего) списка и проверять на палиндром. Первый найденный палиндром и будет искомым. И не нужно, сука, двух массивов и две пары вложенных циклов. А такую хуйню:
                >> Затем перебрать полученные числа, деля их при этом последовательно от 1 и до самого числа.
                Простить можно только фронтенд-макаке, если ее не придется подпускать к D3.js

                2

                14
                • TL:

                  > перебирать нужно в диапазоне от 99999 до 10001 только по нечетным
                  Я думаю ты получишь O((N/2) ^ 2). Все равно 2 цикла вложенных.

                  Не проще ли построить сегментированным способом решето Эратосфена, у которого O(n log (log n)).

                  А уже потом спускаться для a и b линейно уменьшая индекс массива на 1.
                  Притом случаи когда a == b проверяются только один раз.

                  9

                  1
                  • Aen Saevherne:

                    O((n/2)*(sqrt(n)/2)) если точнее, но решето быстрее не из за самой асимптотической сложности, а из за того что в нем нет «тяжеловесной» арифметики, а я то боролся за минимальную сложность по памяти а не операционную.

                    0

                    0
                    • TL:

                      В решете (усовершенствованном) тоже используется принцип когда хотя бы один множитель <= квадратному корню, только алгоритм считает наоборот через квадрат числа. Таким образом вычислительная сложность уходит на второй план.
                      Просто решето быстрее как алгоритм, чем то что я прочитал именно из-за меньшей сложности.

                      До линейного сегментированного решета руки не дошли, ибо и так fuck есть чем заняться )))

                      1

                      0
                    • Нездоровая хуйня:

                      O(n/2 * sqrt(n)/2) == O(n*sqrt(n)), если еще точнее.

                      1

                      0
                • Капитан Сиська:

                  Я пытался пошутить.

                  14

                  0
              • Кукумбер:

                Учись, сученок. Решил за пять минут.
                1. Искомый палиндром может находиться в пределах от 100.000 до 99.999*99.999
                2. Находим все палиндромы в этом диапазоне с помощью алгоритма нахождения числа-палиндрома от лучших умов планеты из интернета (тысячи их).
                3. Но так как мы ищем наибольший палиндром, то проверяем число на палиндром с конца диапазона, то есть с 99.999 * 99.999.
                4. Так как мы не дебилы, то сразу находить все палиндромы нам не надо, поэтому получаем их по одному начиная с наибольшего с помощью генератора. И над этим палиндромом проводим следующие операции:
                5. Итак, мы получили первый палиндром. Он точно делится на себя и на единицу — это два делителя. Нужно ещё два — два простых числа. Если делителей больше — то палиндром не является произведением двух простых чисел. Поэтому используем алгоритм нахождения простых множителей к этому палиндрому. Естественно, писать его не надо — ищем в интернете под свой язык от лучших умов планеты. Переписываем так, чтобы как только функция с этим алгоритмом находила больше двух множителей, не считая самого палиндромы и единицы — возвращаем ложь и запрашиваем у генератора новый наибольший палиндром. Проверяем и его. Как только получим два делителя, кроме себя и единицы — это наш пациент. Возвращаем палиндром и оба делителя.

                Поздравляю, вы великолепны. За час с поиском самых лучших и быстрых алгоритмов в интернете можно справиться.

                10

                2
                • Капитан Сиська:

                  Сам сучёнок…)) Всё, НАХУЙ ПАЛИАНДРОМЫ!!! Производственные задачи подьехали…)))

                  1

                  0
                • TL:

                  ГОВНО твой алгоритм и вот почему:

                  1) Посчитав вероятность и оценив количество простых числе до 99999 по теореме о распределении простых чисел, у меня получилось

                  8685 — 1085 = 7600 (вероятное количество во всем диапазоне до 99999 минус вероятное количество до 10000)
                  т.е. всего около 7600 простых чисел

                  забегая вперед я скажу что я посчитал их точное количество:
                  9592 — 1229 = 8363 простых числа в диапазоне [10000..99999].

                  2) количество же палиндромов можно оценить так:
                  a) самое большое произведение 2-ух 5-значных даст 10 знаков
                  b) палиндромы будут вида: abcde edcba

                  т.е. полиндром получается реверсом любой комбинации 5 цифр
                  и фактически с учетом того что диапазон начинается с 10000
                  имеем 99999 — 9999 = 90000 полиндромов

                  10000 00001
                  10001 10001
                  10002 20001
                  10003 30001
                  ..
                  99999 99999

                  всего 90000

                  так вот даже когда ты найдешь все эти палиндромы тебе надо будет проверить каждую «половинку» на простоту и без решета ты в жопе
                  т.е. проще изначально идти от простых чисел (в коментах я уже писал про решето Эратосфена).

                  А теперь давайте спросим говноконтору это реально задача для джуна? Притом например я нихуя не математик, мне пришлось покурить википедию на предмет алгоритмов и теорем. На мой взгляд есть большая разница между программированием и прикладной математикой. Я например Кнута не знаю почти совсем… и что? Хуй через плечо, башка работает )))

                  15

                  0
                  • Philip J Fry:

                    Это относительно нормальное задание не то, что для джуна ,его за 15 часов и школота 9 класса напишет.

                    7

                    2
                    • TL:

                      Теорема распределения простых чисел не изучается в школьном курсе насколько я знаю. Я вот тут читаю дохуя знатоков, только никто ни одного нормального примера не дал.
                      Пишут такое же гавно как твои школьники.. а это типа уже вкатившиеся.

                      7

                      0
                    • Ебучка:

                      ну и зачем вы, хуесосы, выебываетесь?

                      лучше солид дрочите, все равно в его рамках останетесь, и это — в лучшем случае.

                      при чем тут индустриальные задачи?

                      Не башка у вас работает а комбинации из прочитанного, дебилы, это не признак ума)

                      спортивные программисты блять) Эратосфены блять озалупленные)
                      идите домой к теплой сиське в новостройку)))

                      а кретины которые дают такие задачи — просто телку не мяли в нужное время, тем и компенсируют)))

                      мрак, мрак…

                      4

                      1
                  • Ебучка:

                    Вот бы Кнутом тебя ебануть, если ты не знаешь… Бгг)))))))

                    0

                    1
              • автоматизатор:

                если б ты видел матиматику в глаза то знал бы что существуют тесты для простых чисел

                1

                0
            • Дебил-контроль:

              Увожаемый, вы можете помериться с героем статьи количеством извилин.
              Ответ 99899 вам за щеку.

              5

              3
              • Уважаемый$$$:

                какого хуя ты мне это пишешь, долбоёб?

                9

                0
        • Аноним:

          Не, у них уже методички поменялись.
          Савченко уже не герой, не фигура, равная Кобзарю, а предатель.

          Хотя, к чему это Вы? 🙂

          11

          11
    • Членохуй:

      Ахаха, формошлёп возмущён тем, что не оценили его «программистские» способности (которые отсутствуют)

      14

      19
      • C# форевер:

        всеравно у них офис на Оболони, нинаездишся

        4

        1
    • С++ говнокодер:

      Там 45 мин писать. Фидбек получил — пригласили на собеседование. Код респондента — ебаное говно. Мой код за секунду находит.
      Не прогай, это не твое.

      7

      0
    • Степан Срака:

      Твоей мамке

      0

      0
  2. Xmldumper:

    Веб-дев? Задачи на алгоритмику? Порадуйтесь, что он на пол не насрал хотя бы.

    155

    1
    • Веб-дев:

      Мы срем только на женский пол, а вот мальчиков обожаем!

      32

      5
  3. TL:

    Всё решил комментарий ебаной редакции ))

    5

    1
  4. Am Dm:

    А хорошо это или плохо?
    А если уравновесить? Мол, сделаешь как надо — заплатим. Не сделаешь — оштрафуем, сука, потому что дали тебе не примерчик из методички, а часть настоящей работы. И раз ею занялся ты — больше её не делал никто. Ты обосрался — ты запорол график работ целой толпе народа. И неустоечку самую настоящую будь добр.
    Будет ли готов этот злой Бэтмен не только красиво попиздеть, но и достойно ответить за пиздёж?

    9

    14
    • Poor Student:

      Дайте мне, пожалуйста. методичку с примерами.

      7

      1
      • Am Dm:

        Не доёбывайся к мелочам, старайся понять сам смысл.
        «Методичка» ? Да хотя бы вот такие типовые задания из серии «красно-чёрных деревьев», которые все почему-то очень любят, даже если тебе с этим не работать.
        Достаточно «примеров»? Или лучшие умы человечества никак не могут без того, чтобы им всё по буквам разжевали, положили за щеку и обязательно не забыли уточнить, что они всё-таки элита мозгового запаса мира?

        3

        2
        • Poor Student:

          Вижу, оказался не понят. Можете дать мне условия задач, которые надо решить БЕЗ РЕШЕНИЯ? Будет ли эти задачи в методичке, задачнике, учебнике, или на веб-сайте, мне без разницы. Хочу порешать задачи, а где задачи брать не знаю. Те, которые нашел, решаются легко очень (включая и ту задачу, который не смог решить ТС). Кстати, эту задачу я решил так: поместил простые числа в диапазоне [10000; 99999], после чего двигался с конца списка двумя указателями, перемножая их и проверял является ли палиндромом результат.

          Если знаете где можно найти подобные задачи, скажите, пожалуйста.

          2

          1
          • noname:

            В гугле. По запросу «спортивное программирование».

            0

            0
          • Am Dm:

            Речь была не об этом. «Не из методички» — значит, не с потолка (в контексте написанного мною выше), а реальная задача из куска настоящего заказа

            0

            0
          • Chief Javascript Officer:

            Посмотри на LeetCode, там много задач под разный уровень, но надо уметь в буржуйский.

            0

            0
    • Лактобактерия:

      > Мол, сделаешь как надо — заплатим. Не сделаешь — оштрафуем, сука, потому что дали тебе не примерчик из методички, а часть настоящей работы.
      Ну тут уже тогда надо и в проект входить, а то сделает как надо, но не там.

      3

      0
      • Am Dm:

        Как бы это оформили — это уже частности. Сама ситуация дикая. Либо на равных как корыстолюбие, так и ответственность — либо нечего морщить попу и будет как у всех.

        А «у всех», то есть в реальном мире реальных предметов, на тестовом задании потенциальный работодатель ЗАРАНЕЕ тратит на тебя ресурсы и деньги. Неважно, кем ты пришёл работать : резчиком по дереву, металлообработчиком или поваром. Тебя приводят в оборудованное помещение, выдают материалы, инструменты, а в случае станка/плиты/мясорубки и т д — ещё и оборудование, жрущее прорву энергии. И если ты зафейлил — тебе просто укажут на дверь, хотя просрали только что на твою «попытку показать» дохуя немало. Правда, логично, что и об оплате независимо от результата речи быть не может?

        А тут ещё веселее. Придёт #яжевремятратил, который это же самое время гарантированно с нулевой отдачей может потратить на очередной сеанс дрочки. Слава яйцам, что на этот раз он никакого физического ущерба не наносит. Ему даётся выбор : хочешь начать зарабатывать здесь — покажи, что ты это можешь. Всё.
        Задание не «по делу»? А давно была статья от дизайнера, где он хуями крыл хитрых работодателей, дающих как «тестовое» визитки или флаеры, разработка которых иначе стоила бы денег? Тогда уже определитесь, что хорошо, а что плохо

        11

        2
    • Steve Blowjobs:

      Ты че заболел на мозг? Ты рли думаешь, кастомер просил захуярить ему палиндром? Обычное тестовое, после которого прийдется говнокодить за болгарами/румынами/индусами/вставить свое

      9

      0
      • Am Dm:

        Я ж не о том, как «по факту». Я касательно хотелок героя статьи

        0

        0
    • Зигмунд Фройд:

      Договор подпишут, ага.

      0

      0
  5. Не JS-гуру:

    Тестовое странное, конечно, но чувак — долбоёб. В следующий раз этот гуру будет перебирать все элементы выборкой из БД.
    Реджект сразу, желательно с припиской, что он долбоёб.

    45

    0
    • john:

      Я бы предпочел чтобы мне ответили что я долбоёб, чем игнор.

      Собеседуемый думаю тоже задумался бы. Хотя думаю он и так знает что у него уровень в кодинге «долбоёб», но если бы после каждого тестового на 15 часов ему присылали мэйл вида «Бро, всё хуйня. Медленное говно твоя прога, и чекай память. И вообще результат выдает не тот, лол.», то одно из двух, либо он бросил бы кодинг в припадке ненависти, либо может быть начал бы думать, и через года 2 получил бы работу.

      13

      1
      • qa-обезьянка:

        >Я бы предпочел чтобы мне ответили что я долбоёб, чем игнор.

        ты долбоеб, не благодари

        5

        1
      • Залетчик:

        В принципе мне так и ответили летом, что я долбаеб, видимо поток долбаебов увеличился, и они решили не отвечать всем подряд.

        3

        0
  6. Витя с химмаша:

    Базука опять шалишь? Шучу, шучу 🙂

    А по теме даже если Евгений обложался и допустил кучу июнь ошибок это неприлично со стороны галеры тупо молчать и не написать ему хотябы пару строк типа вот малыш у тебя сожрано 128 гигов памяти и кор и7 херячил пол часа, надо 128 мб и 3 сек на и7. Так что интетикс получает за щеку.

    74

    5
    • Зигмунд Фройд:

      Где в требованиях быстродействие и ресурсы?

      12

      0
      • C# форевер:

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

        4

        1
        • Зигмунд Фройд:

          Будет повод ткнуть их в говно, дурашка.

          2

          0
  7. FkingSinior:

    Если дев, «который будет сталкиваться только с РИАЛЬНЫМИ задачами», не может написать fizzbuzz, или палиндром, то пусть идет нахуй, серьезно. Я такого бы не взял, пусть он хоть в 100 раз круче всех умеет сверстать говностраницу, или круду наговнокодить. Я бы и не брал бы, если профильного, или околопрофильного образования нет. Ебаные полукровки

    20

    42
    • TL:

      Ждем ваш алгоритм на любом си-подобном языке… C, C++, C#, Java.
      Да хоть паскаль.. вообще на любом, разберемся.
      Но очень хочется взглянуть! You are welcome!

      15

      0
      • FkingSinior:

        public static bool IsPalindrome(this string input)
        {
        if (string.IsNullOrWhiteSpace(input))
        throw new ArgumentNullException(nameof(input));

        if (input.Length == 1)
        return true;

        return input.SequenceEqual(input.Reverse());
        }

        Ну и че ты хотел увидеть ?

        3

        17
        • /dev/null:

          Нет, конкретно решение это задачки, а не ебучий палиндром. P.S. Ты еще и гавнокодер.

          24

          1
        • TL:

          Я имел ввиду решение задачи для джуна!

          Но конкретно по-твоему примеру нет смысла проверять на white space, потому что есть куча символов (особенно unicode-specific), которые не будут white space, но будут не видны на экране.
          Да и по задаче джуна там только цифры должны быть, т.е. если УЖ И ПРОВЕРЯТЬ, то чем-то типа:
          Char.IsDigit Method (String, Int32)

          1

          2
          • TL:

            WOW, какой еблан заминусил? Напиши проекты, в которых ты учавствуешь — я не буду ими пользоваться.

            1

            0
        • Senior Олег Дерипаска:

          Лови два защекойна:
          1. Пустая строка — палиндром.
          2. Производительность: можно брать первую половину символов и сравнивать с реверсом второй половины.

          Я бы хотел увидеть что-нибудь такое:
          public static bool IsPalindrome(this string input)
          {
          int halfLength = input.Length / 2;
          return input.Take(halfLength).SequenceEqual(input.Reverse().Take(halfLength));
          }

          1

          2
          • Зигмунд Фройд:

            Где про производительность в условии? У тебя за щекой?

            0

            0
            • Senior Олег Дерипаска:

              Не попал.
              Про производительность никогда не оговаривают в условиях.
              Но пинают, если к эффективности решения есть вопросы.

              0

              0
              • Зигмунд Фройд:

                Обычно есть тесты. Что не оговаривают — их проблемы.

                1

                0
          • Капитан Сиська:

            А ежели палиандром вида ABCBA ?

            2

            0
            • Am Dm:

              Пардон, увидел уже после того как написал свой коммент

              0

              0
            • Senior Олег Дерипаска:

              Все ок: если количество букв нечетное, то центральную проверять не надо.

              Для любой строки из 5 символов надо сделать две проверки: сравнить 1 символ с последним и второй с предпоследним.

              Количество проверок: 5/2 = 2(для целых чисел в при делении округление идет вниз).
              Для строки «ABCBA» обе проверки будут успешны, функция вернет true.

              0

              1
              • Влажный Миддл:

                чувак сеньор олег дерипаска!
                вот эта ваша еботня с halflength отнимает больше времени, чем сотни тысяч прогонов алгоритма с реверсом полной длины

                але, блядь, эти пятизначные числа, нет никакой необходимости в оптимизации
                вы не под Спектрум пишите и не задачу, которая должна вызываться миллион раз в секунду

                вы из простой строчки городите овер-оптимизацию

                2

                0
          • Am Dm:

            Синьор Олег, на минуточку… Нет-нет, подальше, коллеги услышат — ещё чего подумают…
            А теперь смотри мне в глаза и расскажи о производительности, если в палиндроме (внезапно) НЕЧЁТНОЕ количество символов.
            Баг, да? «Непредсказуемый», блин, «жучок залез и повредил работу отлаженной системы»? Force Major, божественное вмешательство, да?
            Ты — молодец, я верю. Твой продукт будет «обновляться» до тех пор, пока не сдохнет заказчик или его терпение.

            3

            2
            • Senior Олег Дерипаска:

              И в чем проблема?
              «».IsPalindrome() -> true
              «a».IsPalindrome() -> true
              «bab».IsPalindrome() -> true

              1

              0
              • Am Dm:

                Да-да-да. И это в примитивном простом случае. Ткнули носом — «лааадно, испрааавлю…» И ещё повезло, что действительно исправимо, а не писать всё заново.
                Ты же хотел блеснуть и посрамить. А чуток подумать перед этим — не?..
                Хреновый ты работник. Ты, ясен пень, не согласен, но это факт. Я бы тебе даже собачью будку сколотить не доверил. Гвоздь будет торчать, щели в палец или вообще рухнет через день — на кой МНЕ за тобой угадывать, в чём именно ты забьёшь и накосячишь

                1

                3
                • Senior Олег Дерипаска:

                  Ммм.. Куда там носом ткнули? Ты путаешь что-то: тебе просто защекойн прилетел.

                  Прямым же текстом сказано, что на строках нечетной длины код корректно работает. Менять его не надо.

                  Если не согласен, приведи контр-пример: палиндром, на котором эта функция выдаст false.

                  Так что лучше последуй своему совету: прежде чем блеснуть, подумай.

                  3

                  0
                  • Am Dm:

                    Ты собирался сравнивать половину строки с «зеркалкой» второй половины. Тебя спросили, как ты собираешься разделить на две половины строку из нечётного количества СИМВОЛОВ.
                    То, что «а там средний символ проверять не требуется, тра-та-та» — мы не в сказке, компьютер «догадывался» не умеет, он действует по заданной инструкции и никакой отсебятины не творит, если он исправен. Даже RND полностью контролируемый. Так что тебе показали пальцем и хочешь, не хочешь, а приходится модернизировать сей чудный код, чтобы он не «по идее», а на самом деле смог предсказуемо обработать такую строку. А пока не ткнули — ты не соизволил пошевелить, как утверждали древние греки, «железой для охлаждения крови» и продумать варианты.
                    Но ты, повторяю, конечно же, не согласен. Что и не странно.
                    «Умение признать себя неправым — это очень сильная магия. Но ей почти никто не владеет» ©

                    0

                    4
                    • Senior Олег Дерипаска:

                      >Ты собирался сравнивать половину строки с «зеркалкой»
                      > второй половины. Тебя спросили, как ты собираешься
                      > разделить на две половины строку из нечётного количества
                      > СИМВОЛОВ.

                      Лови очередной защекойн: меня не просили объяснить, как я собираюсь делить на две половины сроку нечетной длины.
                      Меня спросиили, как мой код будет работать на строке ABCBA. Именно это я и пояснил.

                      > То, что «а там средний символ проверять не требуется, тра-
                      > та-та» — мы не в сказке, компьютер «догадывался» не
                      > умеет, он действует по заданной инструкции и никакой
                      > отсебятины не творит, если он исправен.

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

                      > А пока не ткнули — ты не соизволил пошевелить, как
                      > утверждали древние греки, «железой для охлаждения крови» и продумать варианты.
                      > Но ты, повторяю, конечно же, не согласен. Что и не
                      > странно.

                      Ты очень не внимателен: я уже пошевелился несколько раз, метко кинув тебя защекойнов. Других телодвижений пока от меня не требуется.

                      Тебя же попросили: если не согласен, то приведи пример палиндрома, на котором этот код отработает криво. Все будет ясно. А пока лови очередной защекойн.

                      5

                      0
                  • Am Dm:

                    Какой же ты… крепкий)))

                    15.04.2018 в 18:58
                    Лови два защекойна:
                    1. Пустая строка — палиндром.
                    2. Производительность: можно брать первую половину символов и сравнивать с реверсом второй половины.

                    Время написания видишь? Это — первое, тобой написанное, о нём и речь. Остальное — было потом и ещё потом

                    Так вот. «Половина» — это всегда ½ от целого, и обе половины всегда равны. Никакого остатка при этом нет.
                    Я, честно говоря, вряд ли смогу точно сказать, что именно выдать «быстрый, точный, но тупой исполнитель» при попытке разделить напополам строку из нечётного количества символов — уточняю, не число, а именно строку из символов, поскольку даже о каком-то преобразовании не было ни слова.
                    Дальше. Допустим, есть среда, которая ничтоже сумняшеся таки проделала это и получила «половины» длиной в n+we символов. Теперь возникает ещё вопрос : как эта чудо-среда справится с поиском символа с индексом n+½?
                    Возможно, где-то есть такое, но это явно нечто экстраординарное. Типа компьютера с троичной системой счисления, на котором, говорят, очень эффективно решались весьма необычные задачи, куда лучше, чем на стандартных машинах…

                    Всё то, что ты писал позже, было правильно, но — ПОЗЖЕ. Возвращаясь к той собачьей будке — а крыша-то протекает. Ну, блин, когда ты будку делал — дождя не было, фигня-с вышла, щас… И действительно, «щас» гидроизоляция на крыше появилась, причём все как надо. Но — ПОТОМ. И те же щели, сквозняки, от которых зимой собака ебанётся в этой будке — «ну, блин, когда я её делал, зимы не было, щас…»
                    В общем, ты меня понял, надеюсь. Хорошо доделать задним числом — это не есть правильно, даже если у вас это true. В том посте ты ляпнул, не что сделав? — правильно, не подумав. Хотя, как оказалось, в конце концов ты отлично шаришь.
                    Я не знаю, правда ли, что это приобретенная привычка иметь над собой погонщика, а сзади себя — тестировщика. Но уже тогда хоть не говорите, что «они не нужны»

                    1

                    2
                    • Senior Олег Дерипаска:

                      > Время написания видишь? Это — первое, тобой написанное, > о нём и речь. Остальное — было потом и ещё потом

                      В том же сообщении, которое ты процитировал, есть еще и код. И раз уж ты сам сказал, что у тебя претензии к этому сообщению, то я тебя прошу(уже в который раз): если считаешь, что в этом коде что-то не так, то приведи в пример палиндром, на котором этот код зафейлится. Или прими защекойн.

                      > Так вот. «Половина» — это всегда ½ от целого, и обе
                      > половины всегда равны. Никакого остатка при этом нет.

                      :))))
                      Ипать, ты смузи перебрал?
                      Познания толкового словаря Даля оставь при себе. Блесни знаниями программирования: сказал, что в коде что-то не так, то приведи набор входных данных, на которых код криво работает.

                      > Всё то, что ты писал позже, было правильно, но — ПОЗЖЕ.

                      Вот видишь, у тебя претензий как бы и нет, выходит 🙂

                      > Возвращаясь к той собачьей будке — а крыша-то протекает.

                      Так ты эту каплю протекающую в виде примера палиндрома представь общественности. Не скрывай.
                      Или крыша протекает только в твоих фантазиях, а в реальности все корректно работает?

                      > В общем, ты меня понял, надеюсь.

                      Я пытался…

                      > Хорошо доделать задним числом — это не есть правильно,
                      > даже если у вас это true.

                      Каким задним числом? Код был здесь приведен один раз, не исправлялся.

                      > Хотя, как оказалось, в конце концов ты отлично шаришь.

                      Вот видишь. К коду у тебя замечаний нет(по секрету сообщу: и быть не может, в нем все корректно).

                      А я пока пойду наужу рыбку на своего червячка.

                      1

                      0
          • Ява-хуява:

            сейчас бы в C#/Java делить строки ради производительности…

            3

            2
            • Am Dm:

              >>> сейчас бы в C#/Java делить строки ради производительности…

              О, да. Именно из-за вас железо, казалось бы, стало в сотни раз производительнее — а софт тупит ещё страшнее, чем раньше. «И так сойдёт» же, «там хватает»…
              Ведро напалма и три горящих спички на тот столик

              6

              1
              • Влажный Миддл:

                оно тупит не из-за того, что кто-то пятизначный палиндром не поделил наполовину, а из-за массы объектов, которые друг друга вызывают, облизывают, делают друг другу миньет и ебутся в анал вместо того, чтобы работать

                12

                0
                • Am Dm:

                  Но, согласись, можно же свести эти затраты к минимуму? Причём, когда ты уже несколько раз поставил себе и решил такую задачу — это будет происходить достаточно быстро и гораздо легче.
                  Ты не ори сильно, я опять о металле. Просто, хоть и давно было, работа мне действительно нравилась.
                  Видел когда-нибудь на железяке следы от резца? Видел, конечно. Фактически это что-то вроде резьбы, то есть «размер» касается только верхушек этой нарезки. Которые составляют процентов хорошо если 20 от всей поверхности. Если это болт или «палка» — хуй с ним. Но я далеко не болты точил. И при эксплуатации такая грубая работа износится в несколько раз быстрее. А это — точность, безопасность (заклинит же), перегрев, шум — смотря что и для чего. В теории (точнее, как раз на практике) во всём Совке (с совком он был, есть и остался) всем похуй, за сделанную единицу заплатят одинаково, лишь бы не явный брак. Но когда ставишь на стол деталь от «Форда», а она даже с виду не отличается от оригинальной — честно говоря, на душе хорошо. И эта штука служит как минимум не меньше родной, потому что ещё и материал был не «промышленных масштабов». Наверное, я дурной динозавр, но работать на отъебись сам ненавижу и другим по мере сил не даю.
                  Причём, повторюсь, не так много нужно времени, чтобы «делать качественно» происходило на автомате и не в ущерб

                  0

                  1
              • Постгуманист:

                Что, блять, значит «из-за вас»? Во-первых, сидящие жависты/шарписты данные языки и фреймворки не разрабатывали. Во-вторых, как ты себе представляешь энтерпрайс на C++, например? Конечно, круто иметь сервак на плюсах, но стоимость, длительность разработки и риски сильно возрастают.
                И да, лагает не из-за ресурсов, а из-за сложности, потому что «есть чему лагать» — пойди, блять, поиграй на приставке из 2000-х и на современной.

                2

                0
                • Am Dm:

                  «Из-за вас» — это не значит один, например, ты конкретно. Было бы глупо. «Из-за» — это как раз все вот эти «как это ни грустно, но надо понимать, что…» То есть в теории мы все миллионеры, а на практике имеем двух проституток и одного старого пидораса ©

                  1

                  0
        • Справедливый, но ебанутый:

          Блядь, это называтся пернуть в лужу. Иди нахуй, серьезно — ты не можешь палиндром, и наверняка fizzbuzz.

          0

          0
      • Єбтыть:

        https://pastebin.com/6mNqNPL9 я там накидал ему в каментах, 3.5 сек на жієс. При том, что жієс я, тащемта, не знаю) Алгоритм очевидный, практически в лоб, без изъебов. Я просто чуть оптимизировал узкие места. Ну епта, надо ж такое делать, не?

        1

        0
    • /dev/null:

      В рот ебал тебя и таких как ты, которые дают такие днищенские оторванные от реальности задачки. Для таких как ты в аду уготовлен 30 см. страпон. Эти задачки не показывают нихуя, кроме умения решать этим самые задачки.

      33

      3
      • ЕбисьКонем:

        Боюсь, оно за 30-сантиметровый еще и поблагодарит )

        8

        0
    • Психолог-хуёлог:

      >>>Я бы и не брал бы, если профильного, или околопрофильного образования нет. Ебаные полукровки
      Да у нас тут прблема! Похоже ты июнь с профильным или околопрофильным образованием, с огромным ЧСВ. При этом на галере все ебаные полукровки-свитчеры выбились в синьёры и тимлиды, а тебя ебут в жопу. Потому, что ты на самом деле — алень.

      7

      0
  8. deez_nuts:

    сделай задание на выходных и получи защеку защекоин и за шиворот зашивроин!

    4

    0
  9. Аппле говно:

    Це рівень розробки на js. Просте завдання з котрим б сі або ➕ ➕ розробник б за пів години впорався б у нього зайняло 15 годин.

    12

    2
    • /dev/null:

      У Js Девов и ++ разные задачи и разные ниши, поэтому сравнивать их это зашквар, это все равно что сравнивать ебучий БТР и гоночную машину на формуле 1.

      13

      3
      • Ебучий БТР:

        Моя 30-мм автоматическая пушка позволит мне победить в любой формуле.

        20

        0
      • Єбтыть:

        Да оно гуглится. И всё и по частям, как угодно. Чувак его просто не сделал, у него ответ неверный. Он гуглом не умеет пользоваться даже.

        4

        0
  10. Истории о педиках (уже 6 историй) https://pultertv.wordpress.com/ .:

    90% вайти соискателей бы не справились с этим заданием.

    10

    2
    • Истории о педиках (уже 6 историй) https://pultertv.wordpress.com/ .:

      А как вообще это решить без перебора?

      И кто-нибудь понял, зачем он:

      // if value is less than start point remove it

      сначала делает расчеты для чисел до 10000, а потом удаляет их из массива? Он не сразу понял, что можно начинать расчеты сразу с 10000 или че?

      И алгоритм перебора у него дебильный. Он начинает с наименьших чисел, хотя нужно начинать с наибольших и делать декремент в каждом множителе и так до первого попадания.

      0

      1
      • Тоха:

        «сначала делает расчеты для чисел до 10000, а потом удаляет их из массива? Он не сразу понял, что можно начинать расчеты сразу с 10000 или че?»

        Найти простые числа для деления нужно все, а не только после 10000. Потому и ищется с двойки.

        2

        0
        • Артурка-защитник:

          Тоха, нельзя с 10к начинать. ты не вникаешь

          0

          0
      • Aen Saevherne:

        С двойки он начал чтоб перебор не такой дебильный был, это у него такое решето Эратосфена. Гифку он посмотрел, а вот алгоритм переписать не смог. Собственно в текущих условиях, когда начинать нужно «сверху», толковый перебор
        [range(2, sqrt(n), 2)] справится быстрее, и затраты памяти меньше будут.

        0

        0
  11. vane4ka:

    Это не тестовое задание. Подобные задачки, обычно в количестве 3-5 штук, шлются перед тем, как ХР пересылает резюме тех лиду на рассмотрение. Используются они чтобы отсеять людей, не умеющих кодить. Формулировку таких задач специально делают запутанной, чтобы их нельзя было легко нагуглить.
    Конкретно эта задачка находится на уровне школьной районной олимпиады по информатике.

    15

    6
    • Гребец:

      Суть в том, что эта задача гуглится на отлично.
      Первая ссылка по «largest palindrom» https://gist.github.com/fredrikslattman/3982870, даже без приставки «js»
      Работает она не многим быстрее чем у автора, но позволяет закрыть тестовое не за 15 часов, а за 15 секунд, и занимает в раза 4 меньше места, что значительно повышает шанс того, что на твое тестовое кто-то посмотрит.

      6

      0
      • TL:

        Там говно код. Норм только функция isPalindrome.

        1

        0
    • Зигмунд Фройд:

      Такие задачи не имеют никакого отношения к реальности. И не показывают ничего.

      6

      4
      • /dev/null:

        Долбаебам — собеседующим попробуй это объясни.

        11

        1
      • C# форевер:

        Еще как показывают. Если согласился, значит есть неплохие зачатки раба.

        10

        4
        • Капитан Сиська:

          Не могу согласиться. Лично мне просто нравится решать задачи. Я раб задач…))

          9

          0
      • vane4ka:

        Реальность в том, что если кандидат не может справиться с физзбуззом, то все общение с ним должно остаться на уровне HR.

        10

        0
  12. ЕбисьКонем:

    Покажите мне тот хуй, с которого насасываются подобные задачки.
    Оно-то, решаемо, да. Но вот нахуя, блять?! Под такое тестовое запросто пройдут полчища говнокодеров и прочих абизян.

    Так и представляю себе ц̶в̶е̶т̶е̶н̶и̶е̶ ̶ш̶и̶з̶о̶ф̶р̶е̶н̶и̶и̶ полет мысли техлидишки, придумавшего эту хуйню…

    «Таааак, вот дохуя ж умное слово — палиндром. Сходу +100500 к ЧСВ составителя задачи. А если еще и дать объяснение, что это за хуйня, поставив тем самым под сомнение умения соискателя пользоваться гуглом, то ваще шикарно, сразу +50 см. к длине хуя собеседующего! Палиндром, палиндром, палиндром, блеать… Является ли строка палиндромом? Не, то слишком просто, ибо решается одним циклом на кол-во итераций в половину от длины строки. А если натянуть палиндром на другую заумную хуйню — простые числа? Ага, да, вот оно! С̶к̶о̶л̶ь̶к̶о̶ ̶и̶г̶о̶л̶о̶к̶ ̶н̶а̶ ̶ё̶ж̶и̶к̶е̶,̶ ̶е̶с̶л̶и̶ ̶о̶н̶ ̶г̶о̶м̶о̶с̶е̶к̶с̶у̶а̶л̶и̶с̶т̶,̶ ̶а̶ ̶с̶е̶г̶о̶д̶н̶я̶ ̶-̶ ̶в̶т̶о̶р̶н̶и̶к̶?̶ Какой наибольший палиндром можно высрать путем произведения двух простых чисел (до 5 знаков)? Суко, я гениален! Пойду подрочу на себя в зеркало!»

    49

    3
    • /dev/null:

      Ага, а потом будет так: Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard so fuck off.

      17

      1
    • ДитяСториборда:

      Эта задачка скопирована из hackerrank. Они не утруждаются свое придумывать …

      9

      0
  13. ЕбисьКонем:

    Кстати, я один чуток ебанутый? Если получаю подобные тестовые, могу, в зависимости от настроения, и сделать, just for lulz. Однако, предварительно отдаю себе отчет в том, что с шарагой никаких дел иметь не хочу, и не буду, потому как в целом — я ебал работать в окружении тех, кого отбирали по результатам решения таких задрочеств. Ну и, конечно, поизводить на говно собеседующих, тонко намекая, что не они одни могут ебать моск — это святое, да 🙂

    22

    4
    • Непрокатилло:

      Никого не отбирают по результатам этих задач.
      Эти задачи — тест на долбаеба. Вот нахуя на галере гребец, который даже ответ на стандартную олимпиадную задачку нагуглить не в состоянии?

      2

      0
  14. оттуда:

    Тот кто дал ему это тестовое задание искал что-то типа «тестовое задание на С++» очевидно же.
    А сабджект тупо не смог нагугленный ответ под JS подогнать.
    Короче говоря, ебала жаба гадюку.

    11

    1
  15. Биллибой:

    У нас есть скриннинг, и писательство на настенной доске.

    А про тестовые задания мы не слышали с тех пор, когда нас засудили за потенциальный плагиат.

    0

    0
    • Казука-Бобер:

      >> писательство на настенной доске
      Самая важная хуйня, сегодня все только так и работают. В одной из кыйовских галер обвешали досками все этажи — ну что тут сказать, теперь на них рисуют цветочки и прочее подобное говно типа e=mc^2.

      0

      0
  16. Справедливый, но ебанутый:

    Так парень много не просил, прсто хотел фидбэк получить. Нужно было всего-навсего написать ему: КГ/АМ. И всё! Нет, блядь, довели фронтенд дэвэлпэра до истерики. Как вам не стыдно! Сердца у вас нет

    26

    0
  17. Json developer:

    Не написали что у галеры свой функциональный язык программирования. Тестовое задание должен выполнить на любом языке, в ответе должен указать затраченное время. Выполнял это задание на java, стримами гулял по коллекции в поисках правильных ответов. Мой код проверили и прислали ответ — «жрёт много памяти». Но задача мне понравилась. Удачи господа.

    5

    1
  18. Петя:

    Питуха уже опустили под шконку https://github.com/hirdbluebird/Intetics/issues/1

    5

    0
  19. Галерный краб:

    Даже не представляю как сделать эту задачу, но работаю на крупной уважаемой галере уже 3 года. Зато хорошо умею копипастить код со стековерфлоу. А вы просто выебщики.

    44

    0
  20. Бандера:

    я типу ніхрена не програміст (джуніор .net) але за 20хв таке от написав…вроді рахує) якшо хто знає шось шоб швидше рахувало напишіть. мова С#

    using System;
    using System.Collections.Generic;
    using System.Linq;

    namespace ConsolePolindrom
    {
    class Program
    {
    static void Main(string[] args)
    {
    var simpleNumbers = new List();
    var polindrom = new ResultModel();

    for (int i = 10000; i
    {
    simpleNumbers.ForEach(j =>
    {
    var product = i * j;
    if (product > polindrom.Product)
    if (IsPolydrome(product))
    {
    polindrom = new ResultModel { MultiplierFirst = i, MultiplierSecond = j, Product = product };
    }
    });
    });

    Console.WriteLine($»Max product = {polindrom.Product}. Multipliers {polindrom.MultiplierFirst} and {polindrom.MultiplierSecond}»);
    Console.ReadKey();
    }

    public static bool IsSimple(int num)
    {
    for (int i = 2; i <= num / 2; i++)
    {
    if (num % i == 0)
    {
    return false;
    }
    }
    return true;
    }

    public static bool IsPolydrome(int number)
    {
    var arr = number.ToString().ToArray();
    var reversed = new string(arr.Reverse().ToArray());
    int result;
    var isParsed = Int32.TryParse(reversed, out result);
    if (!isParsed || number != result)
    return false;
    return true;

    }
    }

    public class ResultModel
    {
    public int MultiplierFirst { get; set; }
    public int MultiplierSecond { get; set; }
    public int Product { get; set; }
    }
    }

    0

    13
    • Бандера:

      назви методів і змінних трохи від фанаря, так шо не звертайте уваги)

      0

      0
    • Я Путин, пожиратель укронемовлят под водочку.:

      20 хвилин? Тут сразу видно 5 хвилин гугления и 20 секунд копипаста.

      1

      0
    • Зигмунд Фройд:

      Может, тебе ещё код ревью провести?

      2

      0
    • Intetics Inc.:

      Никого не слушай! Скорее отправляй Наташе, напиши: «Я сделаль!!!!1111» и жди фидбэк с оплатой

      0

      0
    • Хипстер-пиздюк:

      За вот это надо по рукам давать. Сколько раз я еще эту хуйню увижу?
      if (num % i == 0)
      {
      return false;
      }
      }
      return true;
      }

      10

      0
    • Senior Python developer 23cm:

      Заодно и тест на знание английского… simpleNumbers там у него…

      2

      0
  21. Я робот:

    А у кого какие были самые ебанутые вопросы/задачки на тех. собеседовании?
    У меня как-то спросили, сколько будет 2 в степени 32.

    2

    1
    • ЕбисьКонем:

      Ну так и надо было ответить «0xFFFFFFFF» ))

      11

      3
      • Вайтішник:

        Ніхуа, неправильно. Правильно 0x100000000

        13

        -1
    • Вискас:

      reusable 0>/dev/null entropy

      0

      0
    • Аноним:

      Тесты на IQ
      Типа, вот те 4 буквы, скажи нам 5-ую.

      1

      0
    • ∃!:

      Помню как-то спросили параметры какой-то NtXXX функции. Видимо держалось всё именно на ней, никто не мог вспомнить че туда за хуйню передавать, как выравнивать и т.п. Неббет, ида, всё впизду проебалось. Другой причины быть не могло.

      1

      0
  22. Хлєбатєль бояркі:

    Колись, було діло, кілька разів робив тестові завдання. В результаті — просраний час. Тепер, звісно, таким не займаюсь. А усяким хутрунам-розумникам кажу так: піди до таксиста і скажи — покатай мене, а я заплачу якщо сподобається, а тоді розкажеш мені куди таксист відіслав.

    15

    1
    • Am Dm:

      Не-а. Если так, то к таксисту надо доебаться в его свободное от работы время и не в машину лезть, а парить мозги вопросами «а проложи оптимальный маршрут отсюда вот сюда с учётом, что это будний день и вечерний час пик»
      Потому что тот гаврик никакой стоящей денег работы не делал, никакое оборудование не изнашивал и ресурсов не тратил. Ну, конечно, не считая #времениже.
      А самое главное — таксист и так уже при работе, а тот сам пришёл работу просить. Тот же водила, уверен, при устройстве не сильно бы охуел от»тестовой поездки» перед приёмом на работу

      2

      1
  23. ровный:

    Блеать, ну ответ-то посан заслужил.
    Достаточно беглого взгяда на код, чтобы понять, что чел совсем новичек, ну или деревянный.
    И написать пару строк, типа: сейчас вы нам не подходите, поучитесь малехо, разберитесь там с O(n), например.
    Раз уж этой шараге вперлись алгоритмы на фронтенде, ебать дебилы.
    Но нет, блеать, хрюша с короной выше этого, а у проверяющего ни минуты времени, ему скорее всего надо сниматься в клипе новом.

    21

    1
    • Зигмунд Фройд:

      В условии задачи ничего нет про быстродействие.

      8

      5
  24. 777777:

    джун — очередняра

    1

    0
  25. Таня HR:

    Выборка всех аутистов github
    https://twitter.com/callouscommits

    0

    2
  26. Мамкин Ангулярщик:

    Бля, 15 часов для решения простой алгоритмической задачи. Почему все умственные инвалиды бегут в js ?

    13

    0
    • Таня HR:

      typescript не осилили!

      5

      0
    • Членохуй:

      Потому что у тестировщиков ЗП маленькие (как член), на Джавистов нужно 5 лет учиться, а потом столько же опыта чтоб пройти на Джуна, а вот ДЖС как раз норм ниша по оплата/порго вхождения

      2

      1
      • Javascript бот работающий на смузи:

        Ахахаха, ты серьезно?)) Пять лет учиться на джавистов ?))))
        Сука, до слез ))))

        4

        0
        • Членохуй:

          Не, ну можно и за 21 день, но кому ты нахуй нужен будешь) Чтоб пройти на джуна нужно быть стронг мидлом.

          2

          0
  27. Скромное обаяние буржуазии:

    Нормальный вариант, в принципе.Ну только 3 пролета
    1) Пишется за 15 минут.
    2) Решето эрастофена похабно реализовано: деление с остатком там не нужно.
    3) Поскольку палиндром максимальный, обходить надо в противопололожном направлении и сделать проверку с корнем.

    5

    0
  28. Зигмунд Фройд:

    Задача правильно работает? Остальное не оговорено. Какие проблемы?

    2

    2
    • Aen Saevherne:

      Проблема, сука, в том, что код должен быть быстрым и поддерживаемым, и то что джун такой код писать умеет он и должен был доказать, что само-сабой разумеется. «не было оговорено, что срать нужно в туалете, поэтому я насрал возле кофеварки, какие проблеммы?»
      з.ы. задача решена нихуя не правильно.

      16

      1
      • Зигмунд Фройд:

        Где это в требованиях? А нету. Даже тестов не дали. Так что нахуй.

        0

        0
    • Анальный Жвалокрыл:

      правильно, правильно.

      >>>наибольшее число палиндром, которое является произведением двух простых пятизначных чисел,

      https://github.com/hirdbluebird/Intetics/issues/1

      вот и выросло поколение, которое не умеет в арифметику без куркулятора. и ведь ничто не у человека в голове не щелкнуло, когда прочел {multiplier»99429″, ничего абсолютно.

      1

      0
  29. Intetits HR:

    Хочу прояснить ситуацию, это было не тестовое задание, а тест на лалку, которое кандидат успешно провалил. Мы, в Intetits, следим за тем, чтоб у нас работали нормальные люди, которые не готовы делать тестовое, работать за еду и сниматься в гей порно(последнее испытание).

    23

    1
    • Игмунд Форд:

      Так нужно или не нужно сниматься в гей порно??
      В каком порно тогда нужно сниматься?
      Странная контора.

      3

      0
  30. Нездоровая хуйня:

    Не JSник, сделал меньше, чем за 15 часов. Меня возьмут в Intetics?
    https://pastebin.com/gYG3u3xW

    (кстати, так и не догнал, можно ли эту задачу сделать проще, чем перебором)

    2

    0
    • Зигмунд Фройд:

      Не, только перебор. Все правильно сделал.

      0

      0
    • Нездоровая хуйня:

      считает 5 секунд что с «оптимизацией», что без (так что isPrimeFast зря писал).

      0

      0
  31. Браток с Интетикс:

    Та чего вы накинулись на джуна, нормальный код. Я бы конечно поубирал безсмысленные циклы и пеергрузку памяти злоебучим массивом, далее упростил до 20 строк максимум.
    Но яебал это делать в пятницу, посему хрюшенька наша посовещавшись со мной, забили на этого черта.

    Я в свое время так же напедалил спагетти с говнецом, но главное отличие в том что я полез не на ебаное, а на стэковерфлоу и сверился с более удачным решением, далее причесал свой код. Имхо высылать свой высер без рефакторинга это фейл. Тем более что код тормозит как сучка под чем то тяжелым.

    4

    0
    • Артурка-защитник:

      Та я такое же решето на стеке нашел. че ты заряжаешь мне, Братишка

      0

      0
      • Стэковерфлоу:

        Ага, и почему оно тогда у тебя не работает? Небось какой-то нижний ответ с индусом на аватарке копипастил?

        2

        0
  32. Мимокрокодил:

    33211, 30109; 999949999
    ~10 минут на js, ёпта. Имхо, такие задачи, если и имеет смысл давать, то во время самого собеседования, чтобы посмотреть на то, как поведёт себя будущий джун.

    3

    0
    • Аноним:

      Мне давали какие-то палиндромы во время собеседования.
      Можно было писать код на компе и запускать.
      Вроде решил правильно.
      Не взяли.
      Ну и слава богу.
      Мне туда ездить было не удобно. 🙂

      4

      1
      • Мимокрокодил:

        Да уж, тратить много времени на дорогу такое себе удовольствие.

        0

        0
  33. ∃!:

    Кстати, это именно та шарага где писать придется на каком-то проприетарном «функцианальном» говноязыке без либ и прочего. Есть у них еще второй этап собеседования — на месте решать какие-то подобные задачи, на весь день.
    За еду сегодня чего только не сделают.

    2

    0
  34. Єбтыть:

    Блять, реально видно дно. Никто (даже ебаная редакция) не заметили, что у него, кроме прочего, ещё и ответ тупо неверный. Т.е. он делал хуй знает что и не может даже простые числа найти. Не нужно там нихуя для неё, кроме пользования гуглом.

    8

    0
    • Мимокрокодил:

      Угу, первое число очевидно делится на 3. При этом чуть более чем дофига комментов в духе «ну подумаешь, что криво и долго, зато решил правильно, ёпта». Тем не менее, можно было написать хотя бы «ваше решение не верно». Мне вот как-то пришлось человеку писать письмо разбором FizzBuzz как-то (не смог в остатки от деления) и ничего не отвалилось.

      3

      0
    • Мимокрокодил:

      Кстати, внезапно, хотелось бы обратить внимание на issue, который висит 24 дня:

      99429 is not prime number
      #1 opened 24 days ago by OleksiyMukhnyak

      Если этот бро — сотрудник компании, о которой говорится в статье, то ответ ему таки написали… Мдя.

      1

      0
  35. Аноним:

    10 минут задача крутилась в голове после прочтения.
    Еще 30 минут писал, правда, на php.

    Работает за 0,7 с
    Расход памяти 1,4 МБ

    2

    0
    • Базука-кодер:

      5 минут задача крутилась в голове после прочтения.
      Еще 10 минут писал, правда, на delphi.

      Работает за 0,14 с
      Расход памяти 0,88 МБ

      Писал в темноте, вспоминая Танюшу.

      17

      0
      • Казука-Бобер:

        Два дня без дозы — крутило шею, руки, ноги
        Трясущимися руками написал на баше — нахуй вайпнул рут раздел, отработало за пару секунд, расход памяти — как же болит голова, нихуя не помню…
        Пойду искать закладку

        16

        0
      • C# форевер:

        1 минуту задача крутилась в голове после прочтения.
        Еще 30 секунд писал, правда, на калькуляторе МК-53.

        Работает за 0,00007 с
        Расход памяти 12 байт

        21

        0
  36. Парвиз Obkektive-C разработчик:

    Ебать, я такие тестовые на codingame за наносекунды решаю. Возьмите меня вебдэвом, епта! И макбук подарите.

    1

    0
  37. Meltdown:

    NIH синдром в действии! 😀

    1

    0
  38. Тот самый джунхаузен:

    Какого хуя редакция и публика набросились на макаку?
    Ебаная мразь в данном случае контора, выдавшая тестовое и не давшая фидбека.
    Не имеет значения какое гавно накодил кандидат. Дали тестовое — дайте и ответ. «Извините, вы нам не подходите». Две секунды отписать. Человек 15 часов потратил.
    В противном случае все должны узнать об этих пидорасах и никогда, ни при каких обстоятельствах не тратить своё время на собеседование с ними.
    Я в аналогичном случае накатывал статейку на ебаное.
    Один раз мне обещали $15 за полтора часа выполнения тестового на codility. Американская или британская контора, удаленка. Я справился примерно как герой статьи, хуй мне что заплатили. Хорошо пацаны придумали, обещают всем по 15 баксов и платят только тому, кого нанимают. Но я тогда шум поднимать не стал, все равно они ноунеймы.

    11

    6
    • >> Какого хуя редакция и публика набросились на макаку?
      — На кого батон крошишь? Где редакция набрасувалась на макаку? Пруф ли балабол.

      2

      0
      • Тот самый джунхаузен:

        > заявляться с таким тестовым на серьезных щщах — это ебаная суперспособность

        У меня было чувство, что редакция солидарна с анонимусом, приславшим материал.

        Благодарю за уточнение, извиняюсь.

        0

        0
      • Тот самый джунхаузен:

        Заголовок наталкивает

        0

        0
  39. Xikki:

    Хороший трід, люблю срачи про задачи и алгоритмы, а то последнее время тут публикуются долбоёбы-базуки и перегоревшие сисадмины.

    10

    0
  40. Кукумбер:

    1. Искомый палиндром может находиться в пределах от 100.000 до 99.999*99.999
    2. Находим все палиндромы в этом диапазоне с помощью алгоритма нахождения числа-палиндрома от лучших умов планеты из интернета (тысячи их).
    3. Но так как мы ищем наибольший палиндром, то проверяем число на палиндром с конца диапазона, то есть с 99.999 * 99.999.
    4. Так как мы не дебилы, то сразу находить все палиндромы нам не надо, поэтому получаем их по одному начиная с наибольшего с помощью генератора. И над этим палиндромом проводим следующие операции:
    5. Итак, мы получили первый палиндром. Он точно делится на себя и на единицу — это два делителя. Нужно ещё два — два простых числа. Если делителей больше — то палиндром не является произведением двух простых чисел. Поэтому используем алгоритм нахождения простых множителей к этому палиндрому. Естественно, писать его не надо — ищем в интернете под свой язык от лучших умов планеты. Переписываем так, чтобы как только функция с этим алгоритмом находила больше двух множителей, не считая самого палиндромы и единицы — возвращаем ложь и запрашиваем у генератора новый наибольший палиндром. Проверяем и его. Как только получим два делителя, кроме себя и единицы — это наш пациент. Возвращаем палиндром и оба делителя.

    Поздравляю, вы великолепны. За час с поиском самых лучших и быстрых алгоритмов в интернете можно справиться.

    4

    1
    • Кукумбер:

      Поправочка — считаем от 10.000*10.000, а не от 100.000 (три класса образования все же дают о себе знать).

      2

      0
    • noname:

      > 1. Искомый палиндром может находиться в пределах от 100.000 до 99.999*99.999

      Первое утверждение и уже ошибка: искомое число-палиндром должно быть ПРОИЗВЕДЕНИЕМ двух простых пятизначных чисел.

      > 2. Находим все палиндромы в этом диапазоне с помощью алгоритма нахождения числа-палиндрома от лучших умов планеты из интернета (тысячи их).

      Начинать всё таки нужно с поиска простых чисел.

      > Поздравляю, вы великолепны.

      Ага, правда решили не ту задачу.

      1

      1
  41. Крестайоб:

    Нада больше говнокода! Пачиму боцман ни крикнул «Гавнакодер за бортам» и другие рабы не кинули блядь за борт акулам мяса? Пачиму смузихлебу-формашлепу-ущербку ни дали па иблу веслом с лодки? Ниобходиму ж0стк0 наказать лодку, выебав всех хрюш резиновым членом!!!!!

    1

    0
  42. Каракатица:

    // loop through all values in array
    // «i» variable is an index

    Хорошо задокументированный код (с)
    Повезло нам, что он там ещё 100500 абстрактных фабрик не наделал на ровном месте

    9

    0
  43. Гавеный:

    Та завалите уже еблеты прагромисты абоссаные1!!11

    2

    0
  44. ебой:

    6 лет назад писал ебучее тестовое в офисе этой конторы. Надо было написать игру гекси, которая бы играла сама в себя в консольном приложениии

    1

    0
  45. Анальный Жвалокрыл:

    то хуйня, мне на одном собеседовании выдали 1024-битный палиндром и попросили найти два простых числа, перемножением которых он получен.

    2

    0
    • Senior Python developer 23cm:

      1024-кубитный комп к задача прилагается?

      1

      0
  46. Перфектный джавист:

    Код откровенно хуевый, как будто школьник писал.
    И 15 часов на такое — просто синьерская оценка.
    У меня одногрупник-олимпиадник такое за 3 минуты писал при мне, я не преувеличиваю, только оно еще и бысто работало.
    Итого, 3 минуты написание + 15 минут порефакторить, чтоб читабильно стало = слать нахуй такого долбоеба.

    6

    0
    • Альберто Высильович:

      Моего деда дядя ебал твоего одногрупника в жопу.
      Сам то что можешь?

      0

      0
  47. Непрокатилло:

    > Выдумывать всякую абстрактную поебень вроде FizzBuzz — тратить драгоценную возможность увидеть потенциального кандидата в реальных, а не песочных условиях.

    О каких реальных условиях идет речь, если кандидат не может в ебаный ФиззБазз?

    4

    2
    • Нездоровая хуйня:

      Поддерживаю. Это скорее не тестовое, а блиц-отбор на вообще какие-либо знания. Чтобы сразу отсеивать кандидатов, на которых даже времени не стоит тратить.

      0

      0
  48. Философ:

    люди, подскажите, а это задание считается сложным или простым для js-джуна ?

    1

    0
    • Курлык:

      Настоящий джун сосёт с заглотом.

      2

      0
  49. Senior Python developer 23cm:

    Жук, ты сам-то о программированиии представление имеешь? Где ты тут увидел «унизительное тестовое на полдня»?! Это 15-минутная «проверка на вшивость», на которую персонаж умудрился просадить полдня и высрать в результате быдлокод.

    В общем, эта статья — неплохой такой детектор формошлепов. Им-то эта задача покажется невъебенно сложной и задротской.

    3

    0
    • >> Жук, ты сам-то о программированиии представление имеешь?
      — Да, имею. Я бы на такую задачу потратил всего часов тридцать. OH SHI…

      3

      0
  50. js-джун:

    Получите, говнюки))

    function testTask() {
    let primeNumbers = [],
    finalResult = [-Infinity, null, null];

    for (let i = 10001; i < 100000; i += 2) {
    checkIfNumberIsPrime(i) && primeNumbers.push(i);
    }

    for (const number1 of primeNumbers) {
    for (const number2 of primeNumbers) {
    const result = number1 * number2;

    if (finalResult[0] < result && result === reverseNumber(result)) {
    finalResult = [result, number1, number2];
    }
    }
    }

    console.log(Number.isFinite(finalResult[0]) ? finalResult : 'Not found');
    }

    function checkIfNumberIsPrime(number) {
    if (modulo(number, 2) === 0) {
    return false;
    }

    let end = Math.ceil(Math.sqrt(number));

    for (let i = 3; i <= end; i += 2) {
    if (modulo(number, i) === 0) {
    return false;
    }
    }

    return true;
    }

    function reverseNumber(number) {
    let reverse = 0;

    while (number) {
    reverse *= 10;
    reverse += number % 10;
    number = Math.floor(number / 10);
    }

    return reverse;
    }

    function modulo(num, div) {
    if (div & div — 1) {
    return num % div;
    }

    return num & div — 1;
    }

    testTask();

    0

    0
    • Гаврюша Обізянов:

      і хулі тут получять, на і7 4gen ажных 12,7с http://prntscr.com/j6b4lx , раз было 11,7. только всеровно дахуя. давай через побитвый сдвиг

      1

      0
  51. епт:

    ruby -rprime -e ‘a=Prime.to_a(1e5)[1229..-1];p a.product(a).select{|a,b|(x=»#{a*b}»)==x.reverse}.max_by{|a,b|a*b}’

    4

    0
  52. Eugene86:

    0.58 секунд на i7 что на макбуке 13»
    https://paste.ofcode.org/6KjARJ4S7sUYNDWn5gDEhD
    Думаю что можно улучшить…

    0

    0
    • Аноним:

      Извините, но я не понимаю Ваш код 🙂

      0

      0
  53. username:

    Просрали все полиндромы

    0

    0
  54. Он:

    Да похуй на алгоритмы, он блять ифы без фигурных скобок пишет, за это нужно сжигать нахуй

    0

    0
  55. Eugg:

    Это точно задания для разраба js? Больше подходит для разраба интересно математического софта типа Autodesk Maya, а не банального фронт-энда.

    0

    0
  56. Не їбе, шо ти Калістрат:

    Не вижу как поиск ответа вменяемым быдлокодером может занять больше 5 мин. Жукорыб, это же в сущности замечательная тематическая айтишная капча

    0

    0
  57. AndreaB330:

    Такс такс такс, что тут у нас по фронтендерам в комментариях.
    Я пришел вам немного помочь. То, что ваш перебор решает задачу за 1-5 сек это круто да.

    Но я вот вам принес числа побольше 2465851567 * 4055394097 = 9999999888889999999 это 500мсек на моем стареньком ноуте (Исходная задача за 15мсек, исходную можно еще и ускорить)

    https://pastebin.com/cwEHieUp (сори не JS :(( )

    2

    1
    • Eugene86:

      Решение неверное, но подогнано под верный ответ.
      Алгоритм поиска палиндромов реализован неправильно и выдает числа, которые палиндромами не являются. Вам просто повезло что среди первых 5 результатов оказался тот, который нужен. Ещё в коде есть несколько очень сильных предположений, в частности, предположение что ответ существует

      0

      1
      • AndreaB330:

        Во первых. Решение верное.

        Во вторых, палиндромы ищутся верно, запустите программу и выведите n.
        В третьих, если ответа не существует программа ничего не выведет, в чем проблема?
        Какие еще есть «очень сильные предположения»?

        Поконструктивней критикуйте, с фактами, а не «ага ну вот тут точно баг, я же гуру, я знаю»

        2

        0
      • AndreaB330:

        Окей предположим я понял придирку, да палиндромы правильно ищутся только длинны 2*N-1 где N-длинна простого. Остальные будут неверными. Но для любого N от 1 до 10 эта программа верно найдет ответ та как все ответы будут именно длинны 2*N-1

        Но все равно слишком громко звучит «Решение неверное, но подогнано под верный ответ.»

        Поэтому это решение все еще верное и оно решает задачу в тысячи раз лучше чем все остальные решения описанные тут.

        1

        0
  58. Парвиз Junior Python Embedded Architect:

    15 минут на питоне, проверяйте (я за щекой уже проверил)
    https://pastebin.com/NWZ7Wm3Q

    0

    0
  59. pisya:

    Ну не знаю, эта Наталья мне сразу ответила, хоть ответ был неправильный

    0

    0