0: Угу. В общем, у нас на интервью с тобой будет 1 час. Будем решать задачки, сколько успеем по очереди.
1: Редактор. Слева будет появляться условия задачи с примерами справа редактор и внизу. Там есть выпадающий список. В правом нижнем углу можно, можно выбрать предпочитаемый язык. Угу.
2: Сейчас, секунду. Угу.
3: Так, хорошо. В общем, читай условия. Если есть какие-то вопросы, задавай в начале. Попробуем с тобой без кода сформировать решение. Если там все хорошо будет, тогда будем писать код.
4: Ну и в конце, когда будешь уверен, можно отправить на запуск и скомпилировать. Конечно, хорошо реализовать проверку слова по правилам игры 5 букв даны 2 строки одинаковой длины так?
5: 1 строка загаданное игровое слово собака, кошка 2 слово.
6: Предложенное игроком в попытке угадать загаданное слово, вернуть строку, составленную из символов плюс звёздочка и чёрточка, так?
7: Правильно, месте условия, но позиции каждую букву можно использовать только 1 раз, например.
8: То есть возьмём пример абака, он, получается, 5 раз предлагает букву а, как я понимаю, да, то есть загаданное слово абака, предполагаемая отгадка это 5 букв, а.
9: Ну вот у нас есть 3 совпадения на своих местах плюсики, остальные минусы, то есть сейчас
10: Ну вот, возьмём, например, кошка, я загадал. Кошка, он горит, балка, балка. Угу. То он у нас вернёт.
11: К у нас буква правильно стоит. Давай сейчас в начале 5 сделаем вот так вот, к он точно правильно? А тоже правильно.
12: И все, получается, я должен буду вывести такой буквы, 3 чёрточки и звёздочку. Правильно я понимаю? Только не звёздочки, а плюсики. То есть, если совпадает на своей позиции, то плюс, да, а звёздочка, если буква такая есть.
13: Не в позиции, так?
14: Допустим, то есть мне надо написать какой-то метод, который будет как раз вот это делать, да, возвращает вот такую строку. Совпадение. Окей.
15: Давай подумаем, как это можно сделать. 1, наверное, что приходит в голову. Это нам нужны, наверное, будут индексы. Это условно возьмём. Самое простое. Сейчас массив, получается, у меня будет массив.
16: Кошка, массив балка, и я буду смотреть по индексам, допустим, букву. А тогда я смогу точно узнать плюсик. Смогу так, ну, пробежаться, сделать.
17: Плюс, ну, в принципе, я все смогу сделать так. Ну, наверное, самое простое решение. 1, что приходит в голову, это вот массив.
18: Так, ну вот хорошо, вот у тебя, ты предлагаешь сразу смотреть и плюсики, и звёздочки, да, расставлять? Сейчас, подожди, ну.
19: Плюсики у нас точно, это делается легко. Если мы берём чёрточку, то что удобно для чёрточки.
20: Ну вообще у нас хэшсет как-то у нас можно использовать для того, чтобы смотреть на есть ли у нас в кошке там буквы, а звёздочка буква есть в загатом сло.
21: Но на другой позиции, возможно, это можно использовать дикшенери дикшенери у нас в принципе подойдёт и для plus, и для звёздочки.
22: Ну, наверное, для чёрточки вроде как должен подойти, потому что там у нас только у нас везде у нас сложность о 1 и перебор, у нас только о атен будет сложность. Мне кажется, тут дикшн должен хорошо подойти.
23: Угу, хорошо. То есть, значит, в дикшнери, что я хочу положить. Ну, можно, наверное, букву использовать, как мы можем?
24: Теперь у нас, мы говорили, что хэшсет можно использовать для, ну, нахождения, а допустим, мы можем взять кошка, мы можем букву к положить в по ключу, и тогда у меня к
25: Будет это null и v value положить 0 и получается 1, 2, 3, 4, 0 и 4. Это индексы у меня будут угу. Ну и все, у меня ооо будет просто.
26: Индекс 1 ш. У меня просто индекс 2 и, а у меня просто индекс 4 будет лежать. Можно так сделать?
27: Угу. А зачем ты хочешь индекс хранить? А мне же надо все возможные поставить. Ну, мне же надо плюсы, звёздочку и чёрточку использовать для, ну.
28: Ответа. Вот и самое простое я могу сделать 2 дикшенери.
29: Хотя можно не дикша, да? Ну, можно просто проходить. И вот какая сложность будет у решения такого, давай подумаем. Ну, скорее всего, тут у нас по, сейчас.
30: О, атен, должно быть, наверное.
31: Не получается. Я прохожу 1 раз по всему предложенному слову отгадки и star. Поиск по дикшенери у меня о, от 1 будет. Угу. А у тебя в дикшенери это?
32: Будет лежать массив индексов, да, чтоб найти совпадение с плюсиком, надо будет ещё по массиву пройти. Не понял?
33: Ну, ты в дикшенери в значение предлагаешь сложить массив индексов, правильно? Где этот символ встречается? Да, получается так. Угу. Если у тебя много будет повторяющих символов, у тебя может ситуация быть, что у тебя
34: По ключу будет лежать большой массив, и тебе, чтобы определить, плюсик ставить или звёздочку, надо будет ещё по всему этому массиву проходить дополнительно. Сейчас, подожди. Хорошо. А что если
35: Может, можно как-то придумать, чтобы я проходил сразу по обоим, ну, по загаданному слову и по отгадке одновременно. Угу. Вот. Тогда что мы можем сделать? Мы можем, наверное,
36: Самое простое. Начнём с того, что я беру отгадку, например, и выбираю букву. Ну вот возьмём, например, 2 пример, который мы ответ написали, беру букву б и прохожу полностью по кошке, но это
37: Она не очень будет.
38: Хорошо, тогда как можно сделать по другому?
39: Вот тогда это будет точно эффективно. У нас по памяти это 100%. Нам надо, чтобы и по памяти было, и по времени, ну, сейчас.
40: Вот, че то я.
41: Пока нет идей. Как я могу ещё раз быстрее вернёмся. Ты чуть чуть уже это упоминал вскользь. Вот у нас есть 2 строки, как мы можем гарантированно плюсики расставить. Вот давай просто.
42: Плюсики, подумаю. Буква б на правильном месте, это, ну, через индексы. То есть, я могу сказать, балка у меня буква б, например, 1. Угу. Я говорю, кошка, посмотри 1 индекс и сравни. Угу.
43: Все, плюс я в принципе, могу это сделать быстро, хорошо все зафиксировали с плюсиками. Теперь как, как звёздочки расставлять. Есть в загаданном слове. А, то есть 1 мы можем
44: В начале проверить, допустим, б является по индексу 0 в кошке. Если не является, то я пробегусь по кошке и поищу там букву б.
45: Вот, и если, соответственно, такая буква есть, то получается, я должен буду открыть эту букву там, ну, там, поставить по этому индексу звёздочку, а если такой буквы нет, то мне ещё раз пробегаться не надо будет.
46: Так вот, получается, ну, ты опять, получается, будешь идти по, по слову и потом ещее пробегаться. Массив в массиве получится. Плюс мы делаем по индексу, это будет быстро звёздочку. Угу. Ну, звёздочка у меня.
47: Только идея это только, ну я не знаю, это либо надо пробежаться, либо хэшсет использовать, но хэшсет это у нас будет память дополнительная как-то. Ну хорошо, хорошо, мы можем использовать хэшсет, да.
48: Да окей, тогда, если мы будем использовать хэшсет, то мы только сможем сказать, есть ли такой, такая буква. Угу. Что нам для этого надо хранить будет в hashset?
49: Ты хочешь сказать, надо будет хранить дикшн в hashset или как-то, я не знаю, мы уже определились, что у нас ключи будут от символа, а по значению что что мы будем ложить, чтобы определять звёздочку, надо ставить.
50: Позиции индекс, получается, должен быть
51: Опять получается массив.
52: А нам нужен вот звёздочка, он просто нам показывает символ встречается или нет. То есть мы уже поняли, что он не в позиции. То есть мы уже определились, что мы прошли и плюсики расставили. А кстати, для сейчас
53: Извини, перебью. У нас вот так вот должно. Угу. Сейчас вот так вот ещё звёздочка должна быть 1, правильно? Нет, мы ж уже буква каждая используется только 1 раз. То есть мы её уже 1 раз поставили в позицию.
54: И все, я понял. Условия се, я сейчас, значит, ещё раз задачу проговорим, потому что немного по другому думал. Угу. Он дал у нас загаданное слово кошка. Он дал слово.
55: Палка, то каждая вот эта буква должна использовать, ну, 1 раз. То есть он должен был загадать какое-то слово, как отгадку использовать какое-то слово с 2 ка, чтобы я, допустим, мог звёздочку поставить. Правильно? Да, да. То есть, если была ба,
56: Как, например, вместо л была буква к, тогда да, мы смогли 1 позицию поставить звёздочку. Тогда смотри, что мы можем 1 сделать. Мы в начале пробежимся по индексам, по плюсам.
57: То есть мы уже все буквы, которые у нас Ровно стоят, ну, на своих местах у нас. Угу. Балл.
58: Сейчас у нас останется балл, тут запишу. Останется балл теперь.
59: Как будто на языке вертится сейчас.
60: Мы ещё говорили, что у нас хэшмап Редик есть, который мы тоже будем использовать.
61: Блин, ну дикшенери все равно как будто, допустим, у нас там, может быть, к кошка, например, не очень будет.
62: Ну, допустим, если у нас будет кошка ещё добавить-ка в 1, 1 буквой, то у нас, если мы будем использовать хэш сет, мы как-то будем терять, ну,
63: Это, а дикшенери у нас будет массив там индексов получается.
64: Хорошо, давай пока остановимся на дикшенери с ключ ключом. Символ, и там будет массив по ключу, массив индексов. Угу. Потом, может, тебе в процессе придёт. Как ещё оптимизировать. Давай.
65: Так попробуем.
66: Так у нас идёт шар и массив интов, так я говорю?
67: А нам, ну, они по условию, они же у нас одинаковой длины все будут, да?
68: Ну, это стоит проверить.
69: Хорошо, что ты спросил.
70: Давай условимся, что если у нас какие-то некорректные условия или ещё че то будем просто пустую строку возвращать.
71: Так, хорошо.
72: Так, в начале сделаем для plus.
73: Давай в начале сделаем вот так вот.
74: Просто пока.
75: Ну, там пусть пока у нас будет лист лежать для, ну, для того, чтобы ответ собрать. Угу. Пока пусть лист будет, чтоб проще было. Теперь я говорю, по
76: Всей длине идти. И говорю, если у меня
77: If correct итыс равен равен итыс.
78: То сейчас стр. Точка it.
79: Будет.
80: Правильно, стоит на правильном месте. Плюс сейчас я, когда он пройдётся у меня по всему, и он мне сейчас выдаст только плюсы. 1, 2, 3, 4, 5. Окей.
81: Это, наверное, не очень тогда давай сделаем в начале сразу лс. Тогда стр. Точка такой буквы в загаданном слове нет, пусть будет в начале, что такой буквы в загаданном слове.
82: То есть в данном случае, ну, берём 2 вариант. Пример. После выполнения этого фора он у меня должен вывести 3 чёрточки. И плюс теперь я, что я должен?
83: Сделать. Теперь я должен все-таки в этих чёрточках найти букву которая есть в ball и ну в остатке получается
84: На другой позиции.
85: Хорошо.
86: Что будет, если как собесов точка ком собес станет пустяком параллельно этому?
87: Буквы, которые у меня вот эти идут в чёрточку, я буду добавлять в дикшенери дик точка эт. Я указываю как ключ.
88: У меня будет сейчас коррект ита, а как велью будет, пусть будет пока тоже лист лежать.
89: Есть интовый.
90: Че то неудобно.
91: Пусть пока так будет.
92: И так он у меня соберёт все мои значения.
93: Хорошо. Вот у меня получился дикшнари.
94: Угу. Я вас слышу, лен, но такое ощущение, как будто.
95: Самое, наверное, вообще самое лучшее будет в начале сложить в дикшенери всю кошку, а потом просто по дикшенери проходить балку тоже будет быстро. Только единственный минус это вот у меня
96: Может быть, в value массив нажать индексов?
97: У меня все равно как будто идеи нет, как оптимизировать можно в таком случае.
98: Ну вот, вот, давай представим. Вот ты сейчас прошёлся 1 раз, да, у тебя расставлены плюсики, и у тебя есть вот массив, ой, не массив, а словарик с вхождениями осталь.
99: Символов, да, то есть чёрточки, так, и минусики. Что нам нужно сделать, чтобы вот в чёрточке там, где надо заменить на звёздочку? Давай подумаем. Ну, пройти.
100: Получается, по ключам, где у меня есть, где ключи подходят, пройтись по массиву и расставить индексы.
101: Если это делать как вот сейчас.
102: Хорошо, давай подумаем, нужны ли нам индексы для этого? Нужны ли нам индексы? Вот мы встречаем вот символ, вот наш пример. Да, кошка балка. Мы встречаем букву б. Как нам
103: Понять, стоит ли нам по этой позиции, по нулевому индексу минус заменить на звёздочку или нет. Я Иду в dictionary, смотрю. Угу. Кеи. Если такого кея нет, то ставлю, оставляю.
104: Чёрточку получается. Угу. Нам индекс нужен для этого, который по, в данном случае не нужен.
105: А вообще он нам нужен будет не в данном случае. То есть мы можем в начале сделать, расставить сюда звёздочки, звёздочки. После этого я делаю хэшсет.
106: Собираю из кошки и говорю, если
107: Нет, все равно не получается. А с минусами хорошо было. Окей. Проще минус на звёздочку менять, чем наоборот? Хорошо. Как нам все равно найти звёздочку, если без индексов?
108: Ну вот представь, у нас вот было, я пример чуть чуть, чтоб тебе проще было. Вот, давай вот так сделаем. Угу. Вот такой у нас входной пример, да?
109: У нас должно.
110: Вот так получиться. Вот давай подумаем. Вот мы прошли, прошли 1 раз заполнили, да, минусиками, плюсиками. У нас та же самая картина получается 3 минуса, 2 плюса, что у нас сейчас будет лежать в дикшенери и
111: И как мы, и вот мы берём, ш, как мы поймём, надо менять длиннее или нет. И у нас сейчас, по сути, это будет кош и ша.
112: Так у меня сейчас в дикшн лежит кош проще.
113: Ну я беру ша, говорю, найди K если он есть угу. То беру там индекс, ты говоришь как-то можно без индекса. Ну видимо наводящее. Ну давай, ну давай, что?
114: Тебе даст индекс, если ты вот достанешь индекс, как ты его будешь использовать? Индекс мне даст точное положение, чтобы я звёзд, ну, чёрточку заменил на звёздочку. Ну, тебе индекс вернёт 3, ну не 3, a2, да?
115: В кошке буква ш под 2 индексом. Как ты будешь использовать эти знания?
116: Ну, условно я зайду в лист мой вот этот стринга и заменю значение на звёздочку.
117: Так, у нас на звёздочку надо 1, ну, 0 индекс менять.
118: Ой, вернее, подожди, сейчас 2 у меня, у нас же загадка видео и задачи с реальных собеседований на сайте хак собесов точка ком. Хватит гадать, что вас ждёт на интервью. Давай, наоборот, сейчас преимущество перед другими кандидатами.
119: Прямо сейчас, если ты будешь идти идти по 1, не по, не по ответу, да, а по корректному слову, дак по корректному слову. Сейчас, подожди.
120: Вот лучше вот этот давай пример возьмём, который есть.
121: Вот такой кокон, кошка, кокон, да, он, он, он очень похожий, тем проще будет. Ну, 1, мы точно поставим плюсы. Потом у нас идёт 3 минуса после
122: Этого у нас идёт чка и чка.
123: То есть, давай, давай попробуем. Вот смотри, вот этот же пример, да, наш дикшн, что у нас будет лежать, у нас будет, пусть пока с индексами.
124: 2.
125: К 3, a4, да? Так получается, да.
126: Так вот, мы берём наше, наше слово, которое искомое плюсы мы пропускаем. Вот наш символ. Символ. Ка. Угу. Можем ли мы, ещё раз посмотрев
127: Смотрел вот на наш дикше понять, что менять и по какому индексу.
128: Ну, можем.
129: У меня есть ключ, есть индекс.
130: Вот мы идём, вот мы рассматриваем наш символ, ка он находится по индексу 2, правильно? И мы меняем. И мы рассматриваем, мы хотим поменять в результирующей строке.
131: Вот точно такой же индекс. Может ты имеешь ввиду по типу как-то в дикшнери собрать именно вот эти. Вопрос в том. Зачну, нужно ли нам
132: Вообще, в принципе, в дикшн хранить индексы символов, когда нам не важна их позиция. То есть звёздочка, она не отвечает. Ну, она не несёт информации, что мы в какой-то позиции должны поменять, что просто
133: Встречается.
134: А, то есть я имеется ввиду то, что хорошо, давай по другому. У меня есть, ка, я смотрю-ка, у меня по нулевому индексу, плюс, по, угу. Индексу плюс теперь, ш.
135: Так, сейчас случайно идёт. Нет, у меня ж-ка идёт, я говорю. Угу. А если у меня такое, тогда звёздочка, это не обязательно, что у меня-ка будет. На. Угу. Я понял. Я просто думал, надо именно.
136: Что звёздочку, где к. Встречается в слове загадки.
137: Понял. Хорошо. Что делать теперь, если у нас повторяющиеся будут? Ну, тогда мы можем тот же самый хэш сет использовать. Мы шка кладём в хэш сет.
138: Потом Иду по кону, говорю, к есть в хэш сете. Если есть, ставлю звёздочку. Оо, есть в хэш сете, ставлю звёздочку и так далее. Угу. А если нечётное число будет в словах совпадений? Ну,
139: Может быть, какие случаи, какой-то символ, он одинаково встречается и там, и там. Угу. По количеству. А может быть, что в 1 слове больше этого символа, в другом меньше. И наоборот, что нам тут поможет?
140: Сейчас.
141: Подожди. Так, то есть, смотри, я же говорю, кошка, а я понял, о чем ты, что нам в кроме, ну, по ключу, что мы будем хранить количество, получается.
142: О, отлично, давай.
143: Переделаем. Окей, хорошо. Значит, 1 проход мы делаем, ставим плюсы и минусы. Угу. Это у меня все поставится как надо тогда, когда
144: Я встречаю минус, ну, несовпадение то, значит, в дикшенери я кладу ключи по ключу, мою букву, а сюда значение?
145: Так, че то я не помню как сделать. + 1.
146: Я тебе по так сейчас не скажу, но по логике можно может проверить как-то, если есть значение, если оно есть, его инкременту. Хорошо, давай так сделаем. Если нет, то добавить единицу.
147: Не помню, как там.
148: Джайс траает, может, какой-нибудь. Ну, я точно помню, у нас есть райгет велью. Ну, можешь, можешь посмотреть, если это ничего страшного, если тебе фишку какую-то надо, вспомнит.
149: Окей, сейчас то, что я все Шарпе не подскажу тебе точно.
150: Сейчас посмотрим.
151: Так у нас есть икши.
152: Точно.
153: Окей, у нас есть вроде там проект какой-то.
154: Try it давать сюда, то есть он вернёт мне булевое значение какое-то так, если.
155: Равно равно.
156: False. То есть такое значение уже есть, то, ну, сделаем.
157: Пока по простому пусть будет и там, по моему, можно сделать так по полу плюс, плюс просто сделать попро.
158: По ключу просто плюс, плюс сделать, должно быть, так вот просто сделать там, по идее, + 1, вроде что-то такое есть. Угу. Угу. Так, хорошо. Теперь мы сложили все, что
159: Нам надо все.
160: Так, ну и 1, что хочется сделать, это просто пройтись по нашим минусам всем и попробовать. Ну, то есть ещё 1 four сделать. Угу. Давай, прихо.
161: Detour. Так.
162: Теперь нам надо взять это.
163: Мы пройдёмся по листу нашему.
164: Так что пока пусть будет совсем просто и
165: Так, тут нас - 1 нет, у нас достаточно будет, так.
166: Самое простое. Мы проходимся ещё раз по листу, теперь я спрашиваю.
167: Это я не помню, там есть что-то подобное.
168: Равно равно будет откатка ит.
169: Нет, у нас же кейс. Для тебя надо ключ. Да, да, да.
170: А может, не знаю, может, контейнс ки, что-нибудь такое. Ну, контейнс там, по моему, точно есть. Contains, это у нас будет.
171: То тогда.
172: Лист с индексом вот этого итого.
173: Я вот не помню, там он так не делается, но у меня должна быть, по сути, там звёздочка должна подставляться, но сейчас у нас получается
174: Ну.
175: Ну, наверное, так, и там, возможно, у нас есть стр.
176: С hack собесов, точка, ком эчар полюбит вас тайком, допустим, тоже сделаем очень просто Фрич.
177: Блин, в общем, надо будет потом этот лист собрать в строку. Вот. Ну, попробуй. Может, у строки конструктор есть, который массив принимает на вход, не помнишь? Нет, не помню.
178: Ну, мне как будто все равно решение не очень нравится, но я как-то не могу придумать, если честно, получше сейчас. Ну, это на самом деле, и хорошее решение. У тебя ж по времени линейное.
179: Получилось по памяти ну ты ограничен языком.
180: Символом у тебя дикшенери не будет огромный. Угу.
181: Единственный вопрос используешь ли ты как-то? Мы ложили по ключу повторяемость символа. Мы используем сейчас как-то эту повторяемость. И зачем вообще мы её ложили?
182: В плане, сейчас подожди, ну вот мы в дикшенери, да, добавляем элемент символ + 1. И сколько раз он встречается в искомой строке. Ну, это надо делать минус.
183: Тогда тут, тогда у меня будет дикшенери по этому ключу.
184: Будет - 1 тогда.
185: - 1. Так, сейчас. И мне тут ещё надо сделать проверку. Будет, что там? Ну, уже не 0. Угу.
186: If дик, пусть будет контейнс и я так контейнс равно равно true так тут не надо, наверное, and.
187: Что там видео?
188: Не равен нулю. Почему надо проверить?
189: Да, наверное, все. Ну, единственное, что, наверное, по синтаксису.
190: Ну, ты можешь попробовать запустить, пусть он там может по синтаксису ошибочки подскажет, вряд ли заработает.
191: Так, трёс.
192: По синтаксе тут будет подольше решать.
193: Синтаксис переписывать будем или как-то?
194: Ну да, поправим, чтоб сблизилось. Код наш тоже тяжело будет. Так. Ладно, если что, я подскажу.
195: Artik шнере так.
196: Так пишется, так попробуй убрать в этом, в трает и в at, там, где ты коррект, ай, добавляешь кавычки убрать просто.
197: Так, так, ча получаем? Мы его, докидываем.
198: Не понял. Ну, 35, 40 строки. Угу. 35. Ты, ты там чары закидываешь ещё в кавычки. Попробуй. Просто я понял. Словарь чара положить без кавычек.
199: Имеется ввиду вот так вот. Угу. И в 35 тоже.
200: Так тут вроде все нормально.
201: Try it on пытается у нас добавить такой ключ и единицу фолс возвращает, если у нас такое есть, потом я обращаюсь по ключу.
202: + 1 вроде должно работать. Тут я добавляю, тут добавляю.
203: Так, теперь сделаем пока по самому простому говорюсь, если будет так, контейнс ключ, если так.
204: Ключ тут можно, в принципе, убрать это.
205: Допустим, это будет работать. Окей, теперь мы хотим
206: Ну, пусть уже тогда будет тут string пильтер.
207: String. Так, string, принтер тогда будет там стрингер.
208: Атент.
209: Валер, а я у string билдера могу как-то обращаться по, ну вот как на листе. Я предлагаю тебе вернуть лист, как было? Ага. А в return просто верни нью стринг и stormy.
210: Инструктору лист свой по идее должно прокатить.
211: Окей. Так, сейчас.
212: У тебя ещё опечатка есть? Вот точно. Вот, вот здесь. Ага, контейнс.
213: Ещё что есть срок 40, что тут не нравится?
214: А вот это зачем нам строка какая?
215: Ну, я добавляю, а у меня трай эт есть трат, да.
216: Trade, по идее, должен добавить. Угу.
217: Скорее всего.
218: Большой. А вот 27 строке, ты с большой буквы Ван берёшь опечатка, скорее всего, 21. Да? Да, я там исправил. Угу.
219: 21, а там?
220: Скетч.
221: Containers так естестно таксист.
222: Ester нас.
223: А, я понял.
224: Смотри.
225: Какие вообще ты тесты добавлял, чтобы проверить разные ситуации?
226: Ну, тут юнит, тесты только подойдут. Ну, какие варианты? Ты ещё, вот, у тебя есть 5, да, примеров, примеров, какие бы ты ещё к ним добавил, чтоб проверить.
227: Все возможные ситуации. Ну, 1, что точно приходит в голову, я бы добавил, что они не равны по длине.
228: Угу. Вот тут, опять же, тоже вопрос. Наверное, надо проверить, что у нас буквы русские используются. Ну, наверное, да, не принципиально так, в принципе.
229: Ну, цифры у нас тоже. Окей. Тут вроде должны работать. Ну, у нас вообще в юни тестах мы пограничные моменты используем. Угу. Ну, тут вроде как-то, как будто.
230: Больше нечего даже.
231: Ну, у нас точно есть, можно сделать, у нас такого нет. А у нас, а есть повторяющийся и в правой тоже у нас есть повторяющийся, наверное, больше никакие нельзя придумат.
232: Ок, давай тогда сколько у нас ещё? У нас ещё 10 минут есть. Давай попробуем ещё 1 задачу. Может быть хотя бы устно какое-то решение мы придём.
233: Давай такую попробуем.
234: Ите этого дома либо с крыши соседнего дома, если есть лестница длиной больше или равная разности, найти минимальную длину лестницы, необходимо, чтобы попасть на крышу катого.
235: Дома пример минимальная длина 1, 5, 2, 1 это будет 3 сначала залезаем на крышу дома справа, оттуда на крышу дома.
236: Так, а что значит единица?
237: Это индекс индекс дома, на который нам надо в итоге забраться. То есть 1 дом это 0 индекс. 2, 1 индекс. Вот на средний дом. Мы, я понял, карабкаемся. Надо найти минима.
238: На длину лестницы получается. Да, да, окей.
239: Сейчас.
240: 1, что мне приходит в голову, у нас есть массив, и у нас есть индекс, который нам нужен. Угу. Что я могу сделать? Я беру индекс, который мне нужен в данном случае пятёрку.
241: После этого я пробегаюсь по массиву и делаю разность.
242: Сейчас нет.
243: Да, я делаю разность, эту разность запоминаю. То есть, условно, я говорю, 5 - 1. Я её запоминаю, у меня будет 4. То есть сейчас четвёрка, после этого я Иду, ну, 5 - 5.
244: Меня не интересует, я говорю, 5 - 2. Это будет 3. Сравниваю с этой четвёркой, которую я запомнил. Если эта разность у меня меньше, чем четвёрка, то я запоминаю уже эту разность и Иду.
245: Дальше по массиву, пока не найду минимальное, то есть по
246: У меня это будет отн и все, что мне надо, это запомнить, только 1 значение получается. Угу. Что ещё надо учитывать, кроме разности высот крышки?
247: В плане, ну вот у меня есть разность между крышами, и вот эта разность является у меня, по сути, длинной лестницы.
248: Я запоминаю каждый раз, ну, минимальное вот это значение длины лестницы, которая мне нужна. Значит, мне ещё надо будет запомнить эту крышу. Обрати внимание, что ещё в какой-то момент нам надо на дом попасть с земли, да?
249: Ну, то есть тогда это будет какой-то базовый, это будет пятёрка у меня. То есть 1 значение, которое я говорю, длина лестницы будет пятёрка. Угу. И значение, которое я запомню, я, получается, должен
250: Индекс 0 пусть будет.
251: Ну, возьмём то, что с земли это будет. А нет, не 0 - 1 пусть будет.
252: Давай возьмём какой-нибудь
253: Ну вот, вот такой пример. Попробуй на нём разложить. Нам надо попасть на тройку, получается. Ага. Угу. На тройку получа.
254: Ну, со 2 крыши, получается, у меня будет ответ - 1. Если это так можно, получается, и
255: Так, 0, 1, 2, 3, да, у меня, получается, должен вер, если я так, ну, правильно понимаю задачу - 1 и 3, если на данном примере должен на все 3 крыши, а
256: Я, я туплю, я должен забраться только на тройку, которая у меня вот эта тройка, это 2 индекс. Тогда ответ у меня будет двойка. Ну то есть это будет 0 1, 2.
257: Тройка, ты. А можешь объяснить ещё раз? Смотри, у нас сейчас задача не спуститься, а подняться и у нас.
258: Угу. Надо ещё, видимо, будет проверять на минус. Вот. Ну, то есть я, получается, Иду по массиву, я запоминаю, у меня начальное значе.
259: Откуда я буду подниматься? Это - 1. Это как с земли мы возьмём. Лестница, будет тройка, это само значение. Вот. И потом я просто пробегаюсь по массиву и нахожу минима.
260: Положительное значение высоты лестницы. Ну и возможно, если это тоже по условию задачи, надо проверить, что у нас индексы сосед.
261: Её как-то.