@codenamecrud

Страница 534 из 1009
Sergey
16.03.2017
07:03:31
он проходил собеседование в hexlet - и его попросили перевернуть строку,, в смысле метод написать)

I
16.03.2017
07:03:55
так, он что-то ужасное сделал?)

Sergey
16.03.2017
07:04:34
он сам не написал без подсказок

ну там эпик интервью, скорее боль и разочарование

Google
I
16.03.2017
07:05:01
верю

кстати, еще попросили при помощи функции rand2(), которая выдает 1 или 2 сделать функцию rand3(), которая выдает 1 или 2 или 3 с равной вероятностью

это вот вчера в одну контору собеседовался

Alexander
16.03.2017
07:06:39
?

В принципе, изи

Алексей
16.03.2017
07:07:01
звучит интересненько

Sergey
16.03.2017
07:07:06
те свою функцию написать где использовать rand2 () ?

I
16.03.2017
07:07:09
да, изи, я быстро догадался, как сделать

да

правда, я на словах объяснил

было лень писать функцию

Sergey
16.03.2017
07:08:13
rand2() + rand2() пока не больше 3 ?)

Alexander
16.03.2017
07:08:31
Я придумал один способ, но он вроде неправильный, сейчас другой ?

Google
Алексей
16.03.2017
07:08:58
тогда вероятность будет не равной как я понимаю

тип одиночная рекурсия?

тоже нет(

I
16.03.2017
07:10:28
только целые, да

Alexander
16.03.2017
07:12:07
только целые, да
Там сложение и деление?

Sergey
16.03.2017
07:12:21
хм, может я херню спорол)

но мне кажется что запускать ни один раз функцию ранд2()

Alexander
16.03.2017
07:13:13
но мне кажется что запускать ни один раз функцию ранд2()
Да, я вот думаю к общему множителю привести — 6

I
16.03.2017
07:13:24
не, проще немного

Alexander
16.03.2017
07:13:40
I
16.03.2017
07:13:52
про рекурсию правы были

Алексей
16.03.2017
07:14:00
так и знал)

Alexander
16.03.2017
07:14:06
про рекурсию правы были
Похоже на усложнение

I
16.03.2017
07:14:19
равновероятность иначе не сделать

Алексей
16.03.2017
07:14:27
Похоже на усложнение
думаю простота имеется в виду про локоничность

Sergey
16.03.2017
07:14:33
rand2() 0 возвращает или только 1-2 ?

I
16.03.2017
07:14:38
1-2

Google
Alexander
16.03.2017
07:14:40
I
16.03.2017
07:15:18
объясни про 6 решение

Alexander
16.03.2017
07:15:52
объясни про 6 решение
Сложи результаты от 3 ранд2 и подели на 2

Равновероятность ок, вложений нет

Можно сделать округление

Или не ок ? падажди ёбана

Непросто с утра в интерпретатор играть

I
16.03.2017
07:17:41
интересно, почему тогда мне сказали они, что это единственно правильное решение

Sergey
16.03.2017
07:18:05
Сложи результаты от 3 ранд2 и подели на 2
слушай, но 1 никогда не покажется

будет только 2 или 3

Alexander
16.03.2017
07:18:13
Sergey
16.03.2017
07:18:18
а надо же, как я понимаю 1,2,3 в качестве результата?

I
16.03.2017
07:18:25
угу

Sergey
16.03.2017
07:18:38
раз ранд2 выдает только 1 и 2

Alexander
16.03.2017
07:18:44
слушай, но 1 никогда не покажется
Да-да, я про отсутствие нуля забываю

Sergey
16.03.2017
07:18:45
то в твоем решении возможны две ситуации

хм)

Adamtsov
16.03.2017
07:19:25
Ответ то какой?)

I
16.03.2017
07:19:28
можно вычитать 1 из каждого rand2() - но не знаю, насколько это тогда красиво

Google
I
16.03.2017
07:19:59
# 11 12 21 22 # 1 2 3 повторный вызов

Sergey
16.03.2017
07:20:43
def rand2 1 + rand(2) end # def rand3 rand2 + rand2 - 1 end 20.times do puts rand3 end

я вот так предлагал в начале, но решил проверить)

2 1 3 3 1 2 1 2 3 2 1 2 2 2 3 2 3 1 2 3

I
16.03.2017
07:21:23
orly?

Sergey
16.03.2017
07:21:31
я не пойму при каком условии выхотели рекурсию юзать

Admin
ERROR: S client not available

Alexander
16.03.2017
07:22:13
Я изначально думал про разделение 2 на 2, но не сообразил до повторного вызова

Sergey
16.03.2017
07:22:19
аа, с равной вероятностью, хм, меня смущает это фраза. Вероятность надо ж как то посчитать

Alexander
16.03.2017
07:22:50
Обратное от возможного количества вариантов

Алексей
16.03.2017
07:23:10
аа, с равной вероятностью, хм, меня смущает это фраза. Вероятность надо ж как то посчитать
скорее прост опредставлять что результаты могут быть одинаковые по разным причинам

Sergey
16.03.2017
07:23:36
покажите код с использованием рукурсии - я тугодум) я понимаю что рекурмсия это повторный вызов, но у нас должно быть условие, когда завершать рекурсию, или имеете ввиду разово?

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

Alexander
16.03.2017
07:25:43
Да-да

I
16.03.2017
07:27:19
def rand3 a = rand2 b = rand2 if a == b && a == 2 rand3 else return 1 if a == 1 && b == 1 return 2 if a == 1 && b == 2 3 end end

че-т типа такого

Google
Алексей
16.03.2017
07:27:58
хитер

Sergey
16.03.2017
07:28:45
математически
математически нет, согласен) можно посчитать % выдачи результатов на большом количестве итераций) вдруг повезет)))

Алексей
16.03.2017
07:29:19
математически нет, согласен) можно посчитать % выдачи результатов на большом количестве итераций) вдруг повезет)))
думаю на собеседовании стримить результаты в консоли для подтверждения как то не ок)

Sergey
16.03.2017
07:29:56
зато проявить общительность можно) вдруг это важнее, чем написать функцию для выдачи 1,2,3 )

I
16.03.2017
07:30:27
ток я не понимаю почему это просто)
ну я на словах объяснял, на словах просто :D

Алексей
16.03.2017
07:30:32
зато проявить общительность можно) вдруг это важнее, чем написать функцию для выдачи 1,2,3 )
пока выдается миллион троек двоек и единиц обсудить крассивые глаза нанимателя)

Sergey
16.03.2017
07:30:53
а если а=2, а б =1 - то будет 3, получается что для тройки больше комбинаций. значит вероятности тоже будут не равны

I
16.03.2017
07:31:29
?

Sergey
16.03.2017
07:31:31
Alex
16.03.2017
07:32:11
если работадатель она, можно еще sleep 10 дописать )
напомнило в гуишках sleep 200 на перерисовки

чтобы было видно что прога работает

Sergey
16.03.2017
07:32:20
?

Alex
16.03.2017
07:32:43
ээ, 200 милисекунд я имел ввиду

Sergey
16.03.2017
07:33:33
а если а=2, а б =1 - то будет 3, получается что для тройки больше комбинаций. значит вероятности тоже будут не равны
я маразматик, сорян, там же только 1 и 2, два операнда, 4 комбинации, при двойках - заново, остальные вещи определены, все) победа) лухари код) пойду учиться

I
16.03.2017
07:33:53
лол кек чебурек

Алексей
16.03.2017
07:34:32
смотри там просто убирается случай когда обе двойки а остальные случаи распределяются на 1 2 и 3

Sergey
16.03.2017
07:35:08
да-да, я признался в своей близорукости, шею на отсечение не дам)

Alexander
16.03.2017
07:41:45
Можно заменить рекурсию на возврат NaN ?

Страница 534 из 1009