Программирование, Путешествия, Покер

Последний пост:1 апреля
810
Статистика
Всего постов
3225
845,319 просмотров
Новых постов
+0
1 в день
Лучшие посты автора
27.09.2022 +233
21.12.2019 +196
22.02.2023 +169
04.01.2023 +166
13.07.2019 +154
Лучшие посты читателей
inpace +111
justpus7 +98
vsobakekot +88
Gtrdy +85
s4ekotilla +78
Самые активные читатели
1 16 17 18 19 38 162
  • Цитата (abacaba @ 17.3.2017)
    Не смотрел фильм про сахар (возможно там это объяснялось), но раз речь зашла, хочу поделиться:

    Сахароза (обычный столовый сахар) = Глюкоза + Фруктоза

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

    Поэтому замещение сахара фруктозой - такое себе. Фрукты хорошая тема, но злоупотреблять с мыслями, что это ради похудения, не стоит. И стоит выбирать фрукты с низким содержанием сахара. В финиках 60% его, это много. В мёде вообще 80%, поэтому не стоит его много есть при заданной цели. В яблоках 5% - ок.


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

    Цитата (abacaba @ 17.3.2017)
    Но есть еще такая штука, как балластные вещества (в первую очередь клетчатка и пектин). Засчет них сахар из фруктов усваивается лучше. Поэтому условное яблоко лучше свежевыжатого яблочного сока.


    Да, потребление соков тоже резко сократил. Сейчас пью только те, что без добавления сахара, которые ребёнку покупаю, и в среднем не больше пары стаканов в неделю.
    12/33
    Ответить Цитировать
    0
  • Спасибо за ответы. Фильм скачал, по дороге на работу посмотрю.
    Еще возник такой вопрос - что есть после тренировки? Условно говоря, вечером я часа 2 поиграл в настольный теннис, весь уставший, потный и голодный еду домой. Разумеется, дико хочется есть. При этом, на ночь наедаться это так себе затея. С этим, как выяснилось в последнее время, проблема.

    Цитата (sosed @ 17.3.2017)
    лев, забив антилопу в первую очередь ест ее живот и ЖКТ, чтобы потом
    было удобно переваривать трудную пищу


    Ну а тасманский дьявол ест все подряд, включая резину, фольгу и т.п.. На него тоже ориентироваться?)
    150/1049
    Ответить Цитировать
    0
  • Еще вопрос. Как я уже писал, 6-8 апреля буду в Москве на конференции по джаве. Вечером 7 апреля договорился встретиться со своими старыми знакомыми, они же Slavik7 и ilovecpma.
    Если кто хочет присоединиться (думаю еще пара человек максимум) и пообщаться на кружкой пива про покер, ит и так далее - пишите в личку.
    151/1049
    Ответить Цитировать
    0
  • strkk, белковое можно, пачку творога например.
    3/14
    Ответить Цитировать
    1
  • Решил вписаться в конкурс, объявленный правительством города Веллингтон, столицы Новой Зеландии.
    Если кратко - то 100 наиболее интересных кандидатов для работодателей Веллингтона ждет путевка на 4 дня в столицу НЗ с оплаченным перелетом, проживанием и экскурсиями. Ну и в эти 4 дня надо еще ходить по собеседованиям.
    В данный момент идет фаза заполнения профиля, ответов на вопросы и т.д. Много вопросов касается готовности переехать туда и они, разумеется, ищут готовых на это людей.
    На кой мне это?
    1. Да просто прикольно. Еще месяц назад я даже не думал, что буду заполнять анкеты для поездки, буквально, на другой конец земли.
    2. Мы с девушкой рассматривали в будущем перспективу эмиграции в англоязычную страну, а это просто отличная возможность посмотреть одну из них.
    3. Я тренируюсь в заполнении резюме на английском и написании своего Bio (кратко о себе), в будущем может пригодиться.

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

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

    Следующий этап, который начнется в ближайшие недели - запись видео о себе. Пока не представляю что рассказывать и в каком формате, но постараюсь сделать все в лучшем виде.
    152/1049
    Ответить Цитировать
    9
  • НЗ хороша абсолютно всем кроме одного - она действительно находится на краю земли :/
    1/14
    Ответить Цитировать
    0
  • Как-то забыл отписываться про вес, восполняю этот пробел. В данный момент вешу около 97,4 кг. Трудно сказать определенно, весы дурацкие и не всегда показывают точно. Промежуточный итог - 5 кг за 3 недели, не так уж и плохо.

    Еще одна задачка с braingames для обсуждения.
    Цитата
    Во время уборки Мегамозг заметил, что в собрании сочинений его любимого писателя все тома стоят в обратном порядке - с 15-го по 1-й. Мегамозг решил расставить их по возрастанию. Он может взять любое количество соседних книг и переставить на другое место. Сколько таких действий ему понадобится, чтобы упорядочить 15-томник? Доказательство минимальности не требуется.


    Решить ее, разумеется, можно и аналитически, но разве не интереснее написать свой велосипед для поиска?
    Я решил попробовать следующий, довольно стремный подход.
    1. Берем все возможные состояния массива из n уникальных элементов, которых всего n!
    2. Определяем эти состояния как вершины графа.
    3. Начинаем добавлять ребра. Ребро между двумя состояниями имеется, если одно состояние из другого можно получить перестановкой непрерывного блока. Например, для вершины [1,2,3,4] ребро с вершиной [1,3,4,2] будет существовать, а с вершиной [2,1,4,3] нет.
    4. Запускаем поиск кратчайшего пути между начальным состоянием и обратным.

    Т.к. сложность подобного способа оценивается как О((n!)^2) или, простым языком, уже при n = 9 количество необходимых операций будет не менее 131 миллиарда, что оказалось многовато для моей рабочей машины, то хочется упростить все это дело.
    Для сравнения, при n = 7 поиск занимает около 1 секунды, при n = 8 около 30 секунд, для n = 9 больше 40 минут (потом я вырубил процесс, не дождавшись результата). При n = 15, которое стоит в условии задачи, цифру мне даже страшно представить.

    Собственно, стоит вопрос - как можно сделать это умнее? Точно известно, что сделать это можно за 11 перестановок.

    Выбрал я такой способ для тренировки работы с графами и лямбда-выражениями, которые появились в java 8.

    P.S. код здесь - https://pastebin.com/6KuB3Lep
    153/1049
    Ответить Цитировать
    2
  • Небольшая подборка ссылок для занимательного чтения (большую часть ресурсов читаю регулярно, по мере появления контента)
    Можно скопом брать и добавлять в закладки.

    Раздел реддита, посвященный джаве. Обычно все самое интересное рано или поздно всплывает там.
    Раз в два месяца выходит Java Magazine, онлайн журнал со статьями про саму джаву, другие JVM языки, последние тренды и новости. Сегодня как раз вышло очередное издание (скачивание доступно при подписке). Я сам скачиваю пдф и распечатываю статьи, выпиливая рекламу.
    Также в блоге компании ZeroTurnaround периодически выходят интересные материалы. Например, про популярные технологии в 2016 году и про тренды популярности последних лет.

    На сайте организаторов конференций и различных встреч Java User Group периодически появляются интересные дайджесты. Направленность, правда, на докладчиков конференций и продукты спонсоров. Также можно посмотреть список встреч в вашем городе и поучаствовать.

    Если вам интересны шахматы, то на sports.ru есть хороший блог, где автор пишет про историю матчей/турниров на мировое первенство.
    Если вам интересно читать про все подряд, то можно почитать этот блог рекламщика из Питера. Много сарказма (не всегда удачного), посты на разную тематику. В общем, рекомендую.

    Для жителей Москвы и близлежащих регионов, которые интересуются программированием и джавой в частности, может представлять интерес мероприятие под названием Oracle Code, которое состоится 23 мая в Москве. Мероприятие, в отличие от конференций, бесплатное. Еще и печеньки завезут, если верить расписанию на сайте.

    Мде...
    Цитата (strkk @ 29.3.2017)
    Точно известно, что сделать это можно за 11 перестановок.

    Выяснилось, что и 9 перестановок многовато...
    154/1049
    Ответить Цитировать
    7
  • Цитата
    Hi Andrei,

    Thank you for registering to take part in LookSee Wellington.

    We had a huge number of very high calibre applications, and only 100 places available and so it is with regret we advise that, having carefully reviewed your profile, you have not been successful in securing a LookSee Wellington place this May.


    giphy.gif
    155/1049
    Ответить Цитировать
    9
  • Цитата
    Собственно, стоит вопрос - как можно сделать это умнее? Точно известно, что сделать это можно за 11 перестановок.


    Интересная задача для программирования. Есть некоторые соображения, как это реализовать. Пожалуй попробую, как освобожусь (сейчас учавствую в 3-х дневном чемпионате Украины по спортивному бриджу).
    8/32
    Ответить Цитировать
    0
  • Пока я смог придумать следующее упрощение. Для каждой вершины высчитываем индекс, который равен количеству отсортированных элементов. И не сравниваем сами массивы, если у второй вершины индекс не больше, чем у начальной.
    Для примера, если мы берем вершины [1,2,4,3] и [1,4,2,3] то, если просто анализировать их на предмет перестановки, то получается что связь есть. Однако, если посчитать индекс, то получается 1 к 1 и ребро можно не добавлять. Итого меньше ребер - меньше времени и памяти на подсчет.
    Для 8 элементов количество ребер в графе после введения индекса уменьшилось в 4 раза.

    Еще бы придумать, как это все распространить на 15 элементов...
    156/1049
    Ответить Цитировать
    0
  • Недавно в разговоре на работе проскочила инфа, что у нас джуниорам после джава-школы дают сразу ЗП в 70к. Какая-то нереальная цифра, чем-то напоминает наш футбол с лимитом легионеров - если умеешь писать не совсем рвотный код, то велкам. А если знаешь немецкий - то можно даже код не уметь писать, все равно возьмут :)

    Вообще я уже не раз упоминал о том, что спрос на разработчиков (особенно толковых, пусть даже без опыта) очень высок. Даже если брать нашу компанию, то динамика начальных зарплат для джуниоров говорит сама за себя.
    2015 год - 45к
    2016 - 60к
    2017 - 70к
    На хедхантере есть вакансии и за 80к.

    Коллеги, которые проводят собеседования, периодически рассказывают об анекдотичных случаях, когда человек не может написать простой хелловорлд!, указывая у себя в резюме "хорошее знание Java SE"

    Словом, если вдруг последние известия от говнорума пришлись вам не по душе, то это хороший повод задуматься и поменять сферу деятельности. Дальше будет только хуже и "меры на благо любителей" будут все больше снижать доход регуляров, особенно не хватающих звезд с неба.
    157/1049
    Ответить Цитировать
    9
  • Пока результаты такие:
    Для упорядочивания 9 книг - 5 перестановок (время вычислений 2:30 мин)
    10 книг - 6 перестановок (5:10 мин)
    Еще не все фишки реализовал, еще попробую пошаманить.

    P.S. 10 книг - 2 сек.
    Сообщение отредактировал Galax - 5.4.2017, 23:28
    9/32
    Ответить Цитировать
    1
  • Цитата (Galax @ 5.4.2017)
    P.S. 10 книг - 2 сек.


    Ну это явно куда лучше чем мой способ поиграться с графами :)

    Как ты решил искать эту последовательность?
    158/1049
    Ответить Цитировать
    0
  • Есть смысл выкладывать код на Delphi, или просто идею рассказать?
    10/32
    Ответить Цитировать
    0
  • Да можно и то, и другое.

    Все равно попробую потом воплотить это на джаве.
    159/1049
    Ответить Цитировать
    0
  • Основная функция, которая вызывает себя рекурсивно:


    procedure RecurseSearch(g, h: integer; CurBooks: TBooks);
    var
    i, Next_h: integer;
    IndexFrom, Len, IndexTo: integer;
    NextBooks: TBooks;
    begin
    if Have_Answer then Exit;
    Inc(NumStates);
    if h = 0 then begin
    Have_Answer:= true;
    Path[0].ALen:= g;
    Exit;
    end;
    // if (g + h > max_dist) then Exit;
    if (g > max_dist) then Exit;

    /////////// create all possible situation /////

    with Path[g+1] do begin
    for IndexFrom:= 1 to Number-1 do begin
    if (IndexFrom > 1) and (CurBooks[IndexFrom] = CurBooks[IndexFrom-1] + 1) then
    Continue;
    AIndexFrom:= IndexFrom;
    for Len:= 1 to Number-IndexFrom do begin
    if (CurBooks[IndexFrom + Len] = CurBooks[IndexFrom + Len - 1] + 1) then
    Continue;
    ALen:= Len;
    for IndexTo:= IndexFrom+Len to Number do begin
    NextBooks:= CreateBooks(CurBooks, IndexFrom, Len, IndexTo);
    Next_h:= Calc_h(NextBooks);
    if (g > 2) and (Next_h = h) then
    Continue;
    AIndexTo:= IndexTo;
    RecurseSearch(g+1, Next_h, NextBooks);
    if Have_Answer then Exit;
    end;
    end;
    end;
    end;
    end;



    При вставке отступы потерялись, код стал не читаемым.
    11/32
    Ответить Цитировать
    1
  • Я создаю из текущей ситуации все возможные ситуации с помощью трех параметров:
    IndexFrom - номер первой книги, которая переносится;
    Len - длина блока книг, что переносятся;
    IndexTo - номер книги, после которой переносимый блок вставляется.
    Направление переноса только вперед (это уже существенно сокращает к-во вариантов).
    Далее использую идею, что если уже две книги стоят упорядоченные, то мы их не разрываем.
    Для этого сравниваю первую переносимую книгу с предыдущей (первый оператор Continue), далее последнюю переносимую книгу с последующей (второй Continue).
    Для нового состояния вычисляется индекс упорядочения (сколько пар книг стоят в возрастающем порядке). У меня правда этот индекс считается в обратном порядке - для начальной позиции он равен Number - 1, а для конечной равен нулю.
    Принимаем такое упрощение - начиная с какого- то номера перестановки мы рассматриваем только варианты, когда этот индекс уменьшается. Т.е каждая новая перестановка увеличивает к-во упорядоченных книг.
    Мы не можем с первой перестановки использовать это упрощение, так как первый ход обычно подготовительный и индекс не меняется. В данном коде я поставил это упрощение после второго хода, хотя можно поиграться с этим параметром и попробовать 1 или 3.
    Это третье упрощение (третий Continue) дает самый большой выигрыш производительности.

    Есть еще идея, которую реализую уже завтра - сама процедура подсчета индекса, сравнивает все пары книг. За одну перестановку мы можем увеличить этот индекс максимум на три и достаточно сравнить три пары книг, чтобы узнать на сколько этот индекс изменился.
    Сообщение отредактировал Galax - 6.4.2017, 1:41
    12/32
    Ответить Цитировать
    1
  • Сделал еще некоторые упрощения. Длина блока перемещаемых книг ограничивается снизу 2 (нет смысла перемещать по одну книгу), и сверху - не более половины к-ва книг. Это значительно уменьшает время вычислений и дает такой же результат.
    Еще несколько незначительных оптимизаций и имеем на данный момент такой результат.
    Для 13 книг - 7 перестановок (время около 10 мин на моем слабеньком компьютере).
    Это значит, что оригинальную задачу для 15 книг мы уже можем решить за 9 перестановок (просто переставив две последние книги).
    Сейчас запустил поиск решения для 15 книг за 8 перестановок. Неизвестно сколько это займет времени. Могу выложить готовый ехе файл программы - в нем можно задавать различные оптимизирующие параметры и решать задачу для различного к-ва книг. У кого мощные компы могут поучаствовать в экспериментах.
    13/32
    Ответить Цитировать
    1
  • Я сейчас нахожусь в Москве на конференции, попробую воспроизвести это все в понедельник на работе, там машина довольно живенькая.
    160/1049
    Ответить Цитировать
    0
1 16 17 18 19 38 162
1 человек читает эту тему (1 гость):
Зачем регистрироваться на GipsyTeam?
  • Вы сможете оставлять комментарии, оценивать посты, участвовать в дискуссиях и повышать свой уровень игры.
  • Если вы предпочитаете четырехцветную колоду и хотите отключить анимацию аватаров, эти возможности будут в настройках профиля.
  • Вам станут доступны закладки, бекинг и другие удобные инструменты сайта.
  • На каждой странице будет видно, где появились новые посты и комментарии.
  • Если вы зарегистрированы в покер-румах через GipsyTeam, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.