Вышел на карьерный трек Яндекса
Мне тут нежно напомнили в комментариях основную идею канала. Я решил не сопротивляться и получить удовольствие от процесса. Трек состоит из нескольких блоков: анализ рынка, резюме, портфолио, собеседование и активный поиск. Да, именно в таком порядке. По разным видео на ютубе я более года изучал как выстроены процессы в аутсорс, продуктовых компаниях и аутстаффе. Сложнее всего попасть в продуктовую компанию, но работать там проще и спокойнее, ведь разработка ведётся над одним приложением, сроки не горят и нет кучи созвонов. Проще всего попасть в аутстафф и аутсорс, но в ютубе часто напоминают что вкалывать там придётся будь здоров. Поэтому их и называют галерами. Аутсорс выполняет приложения на заказ, а аутстафф сдаёт в аренду джунов в другие компании по цене сеньоров
Оптимальнее всего - стартап. Там есть реальная возможность повлиять на продукт и отношение зачастую более лояльное к новичкам и их ошибкам. Я решил диверсифицировать, попробую все варианты, плюс продолжу развивать свой проект в заблокированном телеграмме
😍
🥰 @SnowBallCode
😑 Поддержать канал
😍
Мне тут нежно напомнили в комментариях основную идею канала. Я решил не сопротивляться и получить удовольствие от процесса. Трек состоит из нескольких блоков: анализ рынка, резюме, портфолио, собеседование и активный поиск. Да, именно в таком порядке. По разным видео на ютубе я более года изучал как выстроены процессы в аутсорс, продуктовых компаниях и аутстаффе. Сложнее всего попасть в продуктовую компанию, но работать там проще и спокойнее, ведь разработка ведётся над одним приложением, сроки не горят и нет кучи созвонов. Проще всего попасть в аутстафф и аутсорс, но в ютубе часто напоминают что вкалывать там придётся будь здоров. Поэтому их и называют галерами. Аутсорс выполняет приложения на заказ, а аутстафф сдаёт в аренду джунов в другие компании по цене сеньоров
Оптимальнее всего - стартап. Там есть реальная возможность повлиять на продукт и отношение зачастую более лояльное к новичкам и их ошибкам. Я решил диверсифицировать, попробую все варианты, плюс продолжу развивать свой проект в заблокированном телеграмме
Please open Telegram to view this post
VIEW IN TELEGRAM
Куда вы складываете избыток денег:
Anonymous Poll
14%
В крипту
26%
В экономику: траты, депозиты, фондовый рынок
14%
Изолирую в наличных: дома или в ячейке
60%
Избыток?
This media is not supported in your browser
VIEW IN TELEGRAM
Добавил оживление фотографий в боте "Нейрофотограф", теперь он ещё круче!
Пришлось закопаться в обилие моделей на сервисе который использую и в итоге выбрал самую стабильную и быструю по соотношению цена / качество. Теперь пользователь может оживить любой снимок или картинку просто скинув её в чат и нажав "Оживить фото". Продолжительность ролика: 4, 8 и 12 секунд, а разрешение 480, 720 и 1080p. Формат будет как в оригинальной фотографии, также перед запуском можно написать промт о том какие движения хотите увидеть. Чекайте @NeurFotoBot, функционал уже доступен. Режим поддерживает загрузку до двух снимков, можно поиграться с морфингом и переходом сюжета или просто оживить одну фотографию
Стоимость в токенах варьируется от 4 до 36 и зависимости от параметров, но она всегда видна перед запуском
🥰 @SnowBallCode
😍
Пришлось закопаться в обилие моделей на сервисе который использую и в итоге выбрал самую стабильную и быструю по соотношению цена / качество. Теперь пользователь может оживить любой снимок или картинку просто скинув её в чат и нажав "Оживить фото". Продолжительность ролика: 4, 8 и 12 секунд, а разрешение 480, 720 и 1080p. Формат будет как в оригинальной фотографии, также перед запуском можно написать промт о том какие движения хотите увидеть. Чекайте @NeurFotoBot, функционал уже доступен. Режим поддерживает загрузку до двух снимков, можно поиграться с морфингом и переходом сюжета или просто оживить одну фотографию
Стоимость в токенах варьируется от 4 до 36 и зависимости от параметров, но она всегда видна перед запуском
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Блог начинался как мой путь в разработку через самостоятельное изучение Swift и Яндекс практикум
С тех пор многое поменялось. Я не готов всё время рассказывать о своём опыте и этой платформе. Именно сейчас я прохожу там карьерный трек, но мне больше интересна тема стартапов и нейросетей. Из-за этого я впервые не опубликовал сегодня запись в 9:41. Ранее публикации всегда символично выходили по четвергам именно в это время. Изменения сделаны намеренно. Канал я всё-таки поменяю исходя из своих приоритетов. Кто со мной: идите всех обниму, с кем пути расходятся, благодарю за доверие, поддержку и крепко жму руку
Теперь в 20:20 я буду публиковать тут тексты о стартапах, своих разработках, нейросетях и немного о программировании
@SnowBallCode
😍
С тех пор многое поменялось. Я не готов всё время рассказывать о своём опыте и этой платформе. Именно сейчас я прохожу там карьерный трек, но мне больше интересна тема стартапов и нейросетей. Из-за этого я впервые не опубликовал сегодня запись в 9:41. Ранее публикации всегда символично выходили по четвергам именно в это время. Изменения сделаны намеренно. Канал я всё-таки поменяю исходя из своих приоритетов. Кто со мной: идите всех обниму, с кем пути расходятся, благодарю за доверие, поддержку и крепко жму руку
Теперь в 20:20 я буду публиковать тут тексты о стартапах, своих разработках, нейросетях и немного о программировании
@SnowBallCode
Please open Telegram to view this post
VIEW IN TELEGRAM
Я сейчас начал разрабатывать новый сервис и почти довёл его до MVP
Думаю что за год я примерно понял куда двигаться в сфере телеграм ботов. Да и в целом it индустрия направляется по пути внедрения ai в свои продукты. Уверен что здесь не только хайп и "пузырь доткомов" которым сейчас пугают некоторые блогеры, но и огромное поле возможностей для всех желающих. Именно поэтому я хочу придумать, протестировать и разработать сервис для бизнеса или платформу которой будут пользоваться обычные люди по подписке @iNeedVisionary. С приходом недорогих сервисов вроде курсора, клода и кодекса почти каждый может попробовать свою гипотезу цифрового продукта или даже открыть свою студию разработки в одного специалиста
Вопрос только в том: сколько миллионов таких же энтузиастов в один момент посетила похожая мысль?
🥰 @SnowBallCode
😍
Думаю что за год я примерно понял куда двигаться в сфере телеграм ботов. Да и в целом it индустрия направляется по пути внедрения ai в свои продукты. Уверен что здесь не только хайп и "пузырь доткомов" которым сейчас пугают некоторые блогеры, но и огромное поле возможностей для всех желающих. Именно поэтому я хочу придумать, протестировать и разработать сервис для бизнеса или платформу которой будут пользоваться обычные люди по подписке @iNeedVisionary. С приходом недорогих сервисов вроде курсора, клода и кодекса почти каждый может попробовать свою гипотезу цифрового продукта или даже открыть свою студию разработки в одного специалиста
Вопрос только в том: сколько миллионов таких же энтузиастов в один момент посетила похожая мысль?
Please open Telegram to view this post
VIEW IN TELEGRAM
А что если я свой пет проект превращу в стартап?
Значительно прокачал бота по нейрофотографии и теперь он полностью на инлайн кнопках, локализован на все СНГ языки, использует премиум и кастомные эмодзи (на фото снимок меня если бы я родился и прожил всю жизнь девушкой xd). По проекту: меня сильно подставил провайдер по работе с моделями. Для своего бота я использовал training модель в контейнере на replicate и всё было хорошо три месяца, а потом начались проблемы. В итоге пришлось завести аккаунт на fal ai, закинуть туда доллары и провести ряд тестов. Сейчас полёт нормальный, к тому же в ui по добавлению снимков перед обучением модели расширил их количество до 18 фото и этапов тренировки теперь 1500. Это дает более предсказуемый результат. Хотя по прежнему многое зависит от качества снимков и различимости лиц на загружаемых пользователем фотографиях
Такие дела, а у вас есть какой-нибудь пет-проект или стартап?
🥰 @SnowBallCode
😍
Значительно прокачал бота по нейрофотографии и теперь он полностью на инлайн кнопках, локализован на все СНГ языки, использует премиум и кастомные эмодзи (на фото снимок меня если бы я родился и прожил всю жизнь девушкой xd). По проекту: меня сильно подставил провайдер по работе с моделями. Для своего бота я использовал training модель в контейнере на replicate и всё было хорошо три месяца, а потом начались проблемы. В итоге пришлось завести аккаунт на fal ai, закинуть туда доллары и провести ряд тестов. Сейчас полёт нормальный, к тому же в ui по добавлению снимков перед обучением модели расширил их количество до 18 фото и этапов тренировки теперь 1500. Это дает более предсказуемый результат. Хотя по прежнему многое зависит от качества снимков и различимости лиц на загружаемых пользователем фотографиях
Такие дела, а у вас есть какой-нибудь пет-проект или стартап?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🤡1
У моего хостера физически изъяли серверы в Нидерландах
Разумеется я все хостил в одной локации, у одного поставщика, без балансировщика и зеркал. Чтож, базы данных потеряны, исходный код сохранён, все конфиги сервера, хрон события и другие скрипты мне хватило ума закоммитить. И на том спасибо. Когда подниму все сервисы пройдусь по истории оплат в Robokassa и накину всем токены для @NeurFotoBot, даже если они были потрачены ранее или купили💎 токены за stars. Такие дела, в комментариях написал про этот инцидент подробнее
🥰 @SnowBallCode
😍
Разумеется я все хостил в одной локации, у одного поставщика, без балансировщика и зеркал. Чтож, базы данных потеряны, исходный код сохранён, все конфиги сервера, хрон события и другие скрипты мне хватило ума закоммитить. И на том спасибо. Когда подниму все сервисы пройдусь по истории оплат в Robokassa и накину всем токены для @NeurFotoBot, даже если они были потрачены ранее или купили
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4 1
Удивительно как легко может рухнуть то, что не продуманно до всех возможных мелочей
Вот как предугадать что часть независимой от меня инфраструктуры в момент станет недоступна? Никак. Можно лишь делать бекапы баз данных, а при разрастании проекта создавать realtime реплики на других локациях. В моем случае всё обошлось малыми потерями. Почти всем пользователям я компенсировал потерянные токены. Если кто-то ответит на письмо позже - начислю на их аккаунт тоже. Это моя зона ответственности. На данный момент я всё-таки не готов делать реплики на параллельный сервер, проще делать ежедневные бекапы прямо на VPS и специальным скриптом скачивать самые свежие версии бд на мак по ssh
Сейчас дорабатываю юзерфлоу бота по нейрофотографии убирая лишние сообщения, тк совершенству нет предела. А у вас были факапы? Как справились?
🥰 @SnowBallCode
😍
Вот как предугадать что часть независимой от меня инфраструктуры в момент станет недоступна? Никак. Можно лишь делать бекапы баз данных, а при разрастании проекта создавать realtime реплики на других локациях. В моем случае всё обошлось малыми потерями. Почти всем пользователям я компенсировал потерянные токены. Если кто-то ответит на письмо позже - начислю на их аккаунт тоже. Это моя зона ответственности. На данный момент я всё-таки не готов делать реплики на параллельный сервер, проще делать ежедневные бекапы прямо на VPS и специальным скриптом скачивать самые свежие версии бд на мак по ssh
Сейчас дорабатываю юзерфлоу бота по нейрофотографии убирая лишние сообщения, тк совершенству нет предела. А у вас были факапы? Как справились?
Please open Telegram to view this post
VIEW IN TELEGRAM
Интересно, а что если мне ещё раз пройти теорию из курса Яндекса?
Сейчас я неспешно почитываю карьерный трек, но к заданиям по составлению резюме пока не приступал. В отличие от основной программы которую я прошёл, здесь все темы уже открыты для ознакомления. Нет таких замочков что открывались только после окончания спринта из проекта в проект. Всё-таки я буду немного в этом участвовать и составлю резюме с сопроводительным письмом о своих проектах на Swift, но займусь этим ближе к середине лета. Сейчас хочу сосредоточиться над продвижением своей сетки ботов и двух коммерческих проекта в телеграм. Хочу вывести их на самоокупаемость
Как готовитесь к жаре? Я вот утащил у сестры вентилятор😆
🥰 @SnowBallCode
😍
Сейчас я неспешно почитываю карьерный трек, но к заданиям по составлению резюме пока не приступал. В отличие от основной программы которую я прошёл, здесь все темы уже открыты для ознакомления. Нет таких замочков что открывались только после окончания спринта из проекта в проект. Всё-таки я буду немного в этом участвовать и составлю резюме с сопроводительным письмом о своих проектах на Swift, но займусь этим ближе к середине лета. Сейчас хочу сосредоточиться над продвижением своей сетки ботов и двух коммерческих проекта в телеграм. Хочу вывести их на самоокупаемость
Как готовитесь к жаре? Я вот утащил у сестры вентилятор
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Поговорим сегодня о обстоятельствах непреодолимой силы на примере IT
Я уже ныл на тему того, что мой хостер соседствовал с дельцами которые сдавали серверы для развёртывания приватной сети и ею пользовались киберпреступники. Так вот, сегодня вычитал в одном телеграм канале что люди из гд додумались запретить для российских сайтов и приложений авторизацию через зарубежные сервисы. На момент написания статьи этот законопроект принят в 3х чтениях, но ещё застрял в совете федерации и не подписан одним известным лицом. В прошлом месяце была новость о запрете github, но видимо до него дело так и не дошло. Весной вообще хотели заблокировать зарубежные нейросети, видимо кто эту инициативу продвигал не в курсе что почти все западные сервисы и так банят аккаунты россиян. Со всеми перечисленными проблемами я как-то справился, вопрос вот в чём: сколько моих сограждан опустили руки и не нашли решение? Сколько россиян пользуются махом, вк и другими "наш ответ им"?
На моём этапе обойти эти ограничения для работы не составляет труда, но я заметил что обывател вообще порой не понимает разницу между gmail и вк. Если законопроект подпишут, то штрафы будут огромные. Знаете как админы решат проблему? Часть из них обновит шлюзы авторизации, а другие зарегистрируют домены на друга из Казахстана и Россия опять потеряет множество траффика и интересных проектов
🥰 @SnowBallCode
😍
Я уже ныл на тему того, что мой хостер соседствовал с дельцами которые сдавали серверы для развёртывания приватной сети и ею пользовались киберпреступники. Так вот, сегодня вычитал в одном телеграм канале что люди из гд додумались запретить для российских сайтов и приложений авторизацию через зарубежные сервисы. На момент написания статьи этот законопроект принят в 3х чтениях, но ещё застрял в совете федерации и не подписан одним известным лицом. В прошлом месяце была новость о запрете github, но видимо до него дело так и не дошло. Весной вообще хотели заблокировать зарубежные нейросети, видимо кто эту инициативу продвигал не в курсе что почти все западные сервисы и так банят аккаунты россиян. Со всеми перечисленными проблемами я как-то справился, вопрос вот в чём: сколько моих сограждан опустили руки и не нашли решение? Сколько россиян пользуются махом, вк и другими "наш ответ им"?
На моём этапе обойти эти ограничения для работы не составляет труда, но я заметил что обывател вообще порой не понимает разницу между gmail и вк. Если законопроект подпишут, то штрафы будут огромные. Знаете как админы решат проблему? Часть из них обновит шлюзы авторизации, а другие зарегистрируют домены на друга из Казахстана и Россия опять потеряет множество траффика и интересных проектов
Please open Telegram to view this post
VIEW IN TELEGRAM
Четыре популярных алгоритма на Swift с объяснением где их обычно применяют:
1. Линейный поиск. Самый простой способ найти элемент в массиве. Используют когда массив маленький и не отсортирован, например для поиска в коротком списке
2. Бинарный поиск. Гораздо быстрее линейного, но работает только с отсортированными массивами. Используют в больших отсортированных списках, таких как поиск пользователей, товаров, автодополнение и всё такое
3. Пузырьковая сортировка. Медленная, но удобная для обучения. На практике почти не применяется
4. Быстрая сортировка.
Один из самых шустрых алгоритмов, применяют для сортировки больших массивов данных
В реальных приложениях чаще используют готовые методы .sorted(), .firstIndex(of:) и структуры данных из стандартной библиотеки (Array, Set, Dictionary). Также в функциях используется <T: Equatable> и <T: Comparable>. Это дженерики в Swift где <T> универсальный тип-заполнитель, благодаря которому функция работает с любыми данными: Int, String, вашими моделями. Буква T это стандартное обозначение от слова "Type"
🥰 @SnowBallCode
😍
1. Линейный поиск. Самый простой способ найти элемент в массиве. Используют когда массив маленький и не отсортирован, например для поиска в коротком списке
func linearSearch<T: Equatable>(_ array: [T], target: T) -> Int? {
for (index, element) in array.enumerated() {
if element == target {
return index
}
}
return nil
}
// Пример
let numbers = [5, 3, 8, 1, 9, 2]
if let index = linearSearch(numbers, target: 8) {
print("Элемент найден на позиции \(index)") // 2
}2. Бинарный поиск. Гораздо быстрее линейного, но работает только с отсортированными массивами. Используют в больших отсортированных списках, таких как поиск пользователей, товаров, автодополнение и всё такое
func binarySearch<T: Comparable>(_ array: [T], target: T) -> Int? {
var left = 0
var right = array.count - 1
while left <= right {
let mid = left + (right - left) / 2
if array[mid] == target {
return mid
} else if array[mid] < target {
left = mid + 1
} else {
right = mid - 1
}
}
return nil
}
// Пример
let sortedNumbers = [1, 3, 5, 7, 9, 11, 13]
if let index = binarySearch(sortedNumbers, target: 7) {
print("Найдено на позиции \(index)") // 3
}3. Пузырьковая сортировка. Медленная, но удобная для обучения. На практике почти не применяется
func bubbleSort<T: Comparable>(_ array: inout [T]) {
let n = array.count
for i in 0..<n {
for j in 0..<n - i - 1 {
if array[j] > array[j + 1] {
array.swapAt(j, j + 1)
}
}
}
}
// Пример
var unsorted = [64, 34, 25, 12, 22, 11, 90]
bubbleSort(&unsorted)
print(unsorted)4. Быстрая сортировка.
Один из самых шустрых алгоритмов, применяют для сортировки больших массивов данных
func quickSort<T: Comparable>(_ array: [T]) -> [T] {
guard array.count > 1 else { return array }
let pivot = array[array.count / 2]
let less = array.filter { $0 < pivot }
let equal = array.filter { $0 == pivot }
let greater = array.filter { $0 > pivot }
return quickSort(less) + equal + quickSort(greater)
}
// Пример
let array = [10, 80, 30, 90, 40, 50, 70]
let sorted = quickSort(array)
print(sorted)В реальных приложениях чаще используют готовые методы .sorted(), .firstIndex(of:) и структуры данных из стандартной библиотеки (Array, Set, Dictionary). Также в функциях используется <T: Equatable> и <T: Comparable>. Это дженерики в Swift где <T> универсальный тип-заполнитель, благодаря которому функция работает с любыми данными: Int, String, вашими моделями. Буква T это стандартное обозначение от слова "Type"
Please open Telegram to view this post
VIEW IN TELEGRAM
Ого. Кто бы мог подумать что приложения подозреваемые в слежке за пользователями продолжат ликвидировать
Саммери: Apple удалила из App Store сразу несколько приложений VK: Mail точка ru, VK Музыку, VK Видео, VK Мессенджер, Дзен, Одноклассники и другие сервисы. В VK заявили, что удаление произошло без предупреждения и объяснений назвав такое решение необоснованным и неприемлемым. Госдума же потребовала от Apple объяснить причины удаления. Московский суд уже впаял штраф полмиллиона соответствующему юрлицу за "неисполнение обязанностей по распространению информации в интернете". Apple заявила, что действует в рамках санкционных требований. Интересно, теперь начнётся давление на компанию и блокировки серверов обновлений Apple или чего нам теперь ждать?
Хотите квизы по программированию, стартапам, нейросетям или общим темам из it? 👍🏼- да, 👎🏼 - нет
🥰 @SnowBallCode
😍
Саммери: Apple удалила из App Store сразу несколько приложений VK: Mail точка ru, VK Музыку, VK Видео, VK Мессенджер, Дзен, Одноклассники и другие сервисы. В VK заявили, что удаление произошло без предупреждения и объяснений назвав такое решение необоснованным и неприемлемым. Госдума же потребовала от Apple объяснить причины удаления. Московский суд уже впаял штраф полмиллиона соответствующему юрлицу за "неисполнение обязанностей по распространению информации в интернете". Apple заявила, что действует в рамках санкционных требований. Интересно, теперь начнётся давление на компанию и блокировки серверов обновлений Apple или чего нам теперь ждать?
Хотите квизы по программированию, стартапам, нейросетям или общим темам из it? 👍🏼- да, 👎🏼 - нет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8 2👎1 1
На прошлой неделе вы проголосовали за LeetCode, вот две простые задачки на Swift с решениями
🐬 Дан массив целых чисел nums и целое число target. Нужно вернуть индексы двух разных элементов, сумма которых равна target
🐬 Определить, является ли целое число палиндромом (читается одинаково в прямом и обратном порядке)
Решение с объяснением в комментариях. Если понравились изи задачки напиши какие уровни опубликовать в следующий раз. Я их решил не сразу, понадобилось время🤔
🥰 @SnowBallCode
😍
// Пример
Input: nums = [2,7,11,15], target = 9
Output: [0,1]
// Примеры
Input: x = 121 → true
Input: x = -121 → false
Input: x = 10 → false
Решение с объяснением в комментариях. Если понравились изи задачки напиши какие уровни опубликовать в следующий раз. Я их решил не сразу, понадобилось время
Please open Telegram to view this post
VIEW IN TELEGRAM
Выкатил обновлённую контент-фабрику подтянув проект до функционала монетизации!
Суть проста как жизнь автооюбителя в Москве: в первую очередь бот написан админом для админов. В нём можно создавать отложенные публикации, генерировать стилистически похожие тексты, на те, которые уже есть в вашем канале. Ещё можно создавать иллюстрации. Сейчас у сервиса включена монетизация только через stars, жду когда мне включат оплату картой за рубли на робокассе. Там какая-то проблема, пишут что бот не реагировал на старт, хотя я проверил на двух аккаунтах и всё работает. Бекенд крутится, вебхуки обновлены. Вообщем жду ответа
Кстати, у меня есть запас по экономике бота и я возможно поменяю mini модели использующиеся в нём на что-то более крутое, посмотрим
🥰 @SnowBallCode
😍
Суть проста как жизнь автооюбителя в Москве: в первую очередь бот написан админом для админов. В нём можно создавать отложенные публикации, генерировать стилистически похожие тексты, на те, которые уже есть в вашем канале. Ещё можно создавать иллюстрации. Сейчас у сервиса включена монетизация только через stars, жду когда мне включат оплату картой за рубли на робокассе. Там какая-то проблема, пишут что бот не реагировал на старт, хотя я проверил на двух аккаунтах и всё работает. Бекенд крутится, вебхуки обновлены. Вообщем жду ответа
Кстати, у меня есть запас по экономике бота и я возможно поменяю mini модели использующиеся в нём на что-то более крутое, посмотрим
Please open Telegram to view this post
VIEW IN TELEGRAM
OpenAI готовит первую физическую клавиатуру Codex Micro
Это компактный макропад который они сделали вместе с Work Louder специально для работы с их AI-кодинг помощником. Устройство получило механические клавиши джойстик и удобное сенсорное управление благодаря этому можно быстро выполнять основные действия при работе с агентами в Codex одним нажатием, вместо того чтобы каждый раз использовать комбинации клавиш. Будет стоить около 230 $
Думаю такая вещь упростит рутину для тех кому совсем лень работать в Codex с клавиатуры. Кнопка push to talk какбы намекает на это
🥰 @SnowBallCode
😍
Это компактный макропад который они сделали вместе с Work Louder специально для работы с их AI-кодинг помощником. Устройство получило механические клавиши джойстик и удобное сенсорное управление благодаря этому можно быстро выполнять основные действия при работе с агентами в Codex одним нажатием, вместо того чтобы каждый раз использовать комбинации клавиш. Будет стоить около 230 $
Думаю такая вещь упростит рутину для тех кому совсем лень работать в Codex с клавиатуры. Кнопка push to talk какбы намекает на это
Please open Telegram to view this post
VIEW IN TELEGRAM
🤮2 2
Ещё пара интересных задачек с литкода и решением на Swift
🐬 Valid Parentheses: дана строка s, содержащая только символы '(', ')', '{', '}', '[', ']'. Определи, является ли строка валидной: все открытые скобки должны закрываться в правильном порядке и соответствующими типами
Объяснение и решение:
• Используем стек: открывающие скобки кладём, закрывающие проверяем и убираем. • Если в какой-то момент не совпадает или стек не пуст в конце false
🐬 Best Time to Buy and Sell Stock: дан массив prices, где prices[i] это цена акции в i-й день. Нужно найти максимальную прибыль, которую можно получить, купив акцию в один день и продав в другой (можно не покупать вообще)
Объяснение и решение:
• Проходим по массиву один раз.
• Запоминаем самую низкую цену слева.
• На каждой итерации считаем потенциальную прибыль и сохраняем максимум
Эти две задачи отлично дополняют предыдущие (Two Sum + Palindrome Number). Они тоже решаются за 10–20 минут, но уже требуют чуть больше размышлений
🥰 @SnowBallCode
😍
// Примеры
Input: s = "()" → true
Input: s = "()[]{}" → true
Input: s = "(]" → false
Input: s = "([)]" → false
Input: s = "{[]}" → true
Объяснение и решение:
• Используем стек: открывающие скобки кладём, закрывающие проверяем и убираем. • Если в какой-то момент не совпадает или стек не пуст в конце false
class Solution {
func isValid(_ s: String) -> Bool {
var stack: [Character] = []
for char in s {
switch char {
case "(", "{", "[":
stack.append(char) // открывающую скобку кладём в стек
case ")":
if stack.last != "(" { return false }
stack.removeLast()
case "}":
if stack.last != "{" { return false }
stack.removeLast()
case "]":
if stack.last != "[" { return false }
stack.removeLast()
default:
return false
}
}
return stack.isEmpty // в конце стек должен быть пустым
}
}// Примеры
Input: prices = [7,1,5,3,6,4] → 5 (купить в 1, продать в 4)
Input: prices = [7,6,4,3,1] → 0
Input: prices = [2,4,1] → 2
Объяснение и решение:
• Проходим по массиву один раз.
• Запоминаем самую низкую цену слева.
• На каждой итерации считаем потенциальную прибыль и сохраняем максимум
class Solution {
func maxProfit(_ prices: [Int]) -> Int {
var minPrice = Int.max // самая низкая цена, которую мы видели
var maxProfit = 0
for price in prices {
if price < minPrice {
minPrice = price // обновляем минимальную цену
} else {
let profit = price - minPrice
if profit > maxProfit {
maxProfit = profit
}
}
}
return maxProfit
}
}Эти две задачи отлично дополняют предыдущие (Two Sum + Palindrome Number). Они тоже решаются за 10–20 минут, но уже требуют чуть больше размышлений
Please open Telegram to view this post
VIEW IN TELEGRAM
1 4 2🤡1
Литкод задачки с решением на Swift ч.3:
🐬 Climbing Stairs: тебе нужно подняться на вершину лестницы, у которой
Объяснение и решение: Это классическая задача на динамическое программирование (почти числа Фибоначчи)
🐬 Valid Anagram: даны две строки
Объяснение и решение: Самый простой и быстрый способ это посчитать частоту каждой буквы, тоесть когда частоты совпадают то это анаграмма
Эти две задачи тоже легко решаются примерно за 20 минут и отлично развивают мышление (динамика + хеш-таблица)
😍
🥰 @SnowBallCode
😍
n ступенек. Каждый раз ты можешь подняться на 1 или на 2 ступеньки. Сколько существует различных способов подняться наверх?// Примеры
Input: n = 2 → 2
// 1. 1 + 1
// 2. 2
Input: n = 3 → 3
// 1. 1 + 1 + 1
// 2. 1 + 2
// 3. 2 + 1
Input: n = 4 → 5
Объяснение и решение: Это классическая задача на динамическое программирование (почти числа Фибоначчи)
dp[i] = количество способов добраться до i-й ступеньки dp[i] = dp[i-1] + dp[i-2]class Solution {
func climbStairs(_ n: Int) -> Int {
if n <= 2 { return n }
var prev1 = 1 // способы добраться до 1-й ступеньки
var prev2 = 2 // способы добраться до 2-й ступеньки
for _ in 3...n {
let current = prev1 + prev2
prev1 = prev2
prev2 = current
}
return prev2
}
}s и t. Определи, является ли t анаграммой s (то есть можно ли переставить буквы в s так, чтобы получилась t)// Примеры
Input: s = "anagram", t = "nagaram" → true
Input: s = "rat", t = "car" → false
Input: s = "listen", t = "silent" → true
Объяснение и решение: Самый простой и быстрый способ это посчитать частоту каждой буквы, тоесть когда частоты совпадают то это анаграмма
class Solution {
func isAnagram(_ s: String, _ t: String) -> Bool {
guard s.count == t.count else { return false }
var counter = [Character: Int]()
for char in s {
counter[char, default: 0] += 1
}
for char in t {
guard let count = counter[char], count > 0 else { return false }
counter[char] = count - 1
}
return true
}
}Эти две задачи тоже легко решаются примерно за 20 минут и отлично развивают мышление (динамика + хеш-таблица)
Please open Telegram to view this post
VIEW IN TELEGRAM
1 2