Про "мелкие задачки для крупных мозгов"

Тема в разделе "WASM.SITE", создана пользователем captain cobalt, 18 апр 2006.

  1. captain cobalt

    captain cobalt New Member

    Публикаций:
    0
    Регистрация:
    21 дек 2003
    Сообщения:
    222
    Адрес:
    /ru/perm
    Мелкие задачки для крупных мозгов - это очень увлекательно и интересно. ;)



    Однако, не очень приятно что они идентифицируются лишь по номерам.

    Неплохо бы дать им осмысленные названия. Вот прямые ссылки:



    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
     
  2. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Я хотел сделать слабо прогрессирующий цикл (по простому - потихоньку от простого к сложному), а потом как то озаглавить. Но людей начало клинить уже после нескольких топиков (код стал посылаться на HLL, началась болтовня околотемная) вобщем я понял, что это пока сложно всё, и решил посылать просто интересные thought provoken задачки, ограниченной сложности, без какой-то системы, лишь бы они касались того что знать важно в большинстве задачек.
     
  3. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    The Svin

    По началу задачки были интересные, а вот под конец как-то не очень. Хотя номер 15 понравился. Насчет номера 14 много болтовни было. Мне нравиться идея решения интересных задачек именно на ассемблере.
     
  4. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


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

    Согласен, что перерасло всё в болтовню. Это обычное дело - когда по делу сказать нечего очень много слово вокруг:)

    Также обычное дело, к сожалению, что когда непонятно то интересно быть не может :dntknw: Я немножко неправильно оценил контингент, очевидно ассемблер в основном для отдушины для большинства. Или оптимизации маленьких кусочков. Когда сложные системы идут в дело, видимо (чисто субъективное наблюдение) либо люди пользуются HLL, (в основном потому что там уже есть готовые наработки) либо вобще не врубаются. Не хочу никого обидеть, сам тугодум и перманентный чайник, чисто волей судьбы брошенный на разроботки сложных систем :))

    Ну нужно как то ведь и учится. Вот будем пытаться потихоньку совместными усилиями.
     
  5. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    > "Насчет номера 14 много болтовни было"

    > "Это обычное дело - когда по делу сказать нечего очень много слово вокруг:)"



    Обычное дело - это когда само "дело" из разряда "сделай то - не знаю что" ;)

    Перечитал я топик и никакой излишней болтовни не увидел - нормальное обсуждение путей решения не вполне определенной задачи (правда с попутным "разбором полетов" - ошибок\описок и недопониманий :). И наметившееся решение в виде массива массивов (наверное это более понятное определение, чем "хэш-таблица с коллизиями" :) кажется вполне разумным. Ну а до конкретных примеров реализации не дошло по нескольким причинам - и автор потерял интерес к теме, и реализацию нельзя отнести к разряду "мелких задач" (если только "алгоритмически и математически"), поэтому бросаться что-то писать на асме без особой надобности ес-но никто не будет. Тут дело автора направить обсуждение в нужное русло - или конкретизировать, разбить на подзадачи и т.п., или же удовлитвориться общими словами и прикрыть тему. Вот кстати и тему Broken Sword'а об объединении и сортировке файлов постигла та же участь... Одним словом ППР - посидели, по..ли (народ. - поговорили), разошлись :)))))
     
  6. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    leo

    Неправда. Задача была несложная. Изложена конкретно.

    Предпологалось использовать пройденный материал.

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

    Broken Sword нечего сюда приплетать,

    там ни стиль (детальность) изложения задачи не сравнимы,

    ни небыло "пройденного" материала где уже отработанны куски которые кирпичиками можно было использовать в данной задаче.
     
  7. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    The Svin

    Формулировка 14й задачки практически не имеет ничего общего с предыдущими, кроме упоминания "например длин из предыдущих задач", и соответственно "пройденный материал", "предыдущий код" и "кирпичики" тут отдыхают. Мою попытку внести определенность в статистику распределения чисел (длин сигналов) ты отмел, мощность множества чисел явно никак не ограничил и значит в итоге мы получили задачку самого общего вида: имеется большой массив двордов до 2^27 элементов, каждый из которых может принимать практически любое значение (> 0). "Размерчик" входного массива уже тянет на 4*2^27=512Мб и к тому же сортировать\изменять его нельзя. Максимальный размер выходной таблицы может быть вдвое больше самого массива, т.е. до 1Гб. Рядовое ОЗУ в 512Мб-1Гб отдыхает, хотя виртуального пространства < 2Гб еще хватает, но рассматривать какие-то сортировочные структуры ссылочного типа уже проблематично (т.к.требуется доп.память на ссылки). Спрашивается с чем больше общего: с предыдущими "мелкими" задачками на битовые операции или с задачами сортировки больших файлов, которые неоднократно поднимались на форуме, но кроме общих слов так ничем и не заканчивались. Задачка Broken Sword'а - последний тому пример. А задача №14 отличается в положительную сторону только тем, что известен сортировочный ключ - dword, но зато есть и отрицательный момент - исходный массив до 512Мб неизвестно зачем сидит в памяти, а не в файле, и изменять его почему-то нельзя ;)



    PS: Боюсь дальнейшие "выяснения отношений" ни к чему хорошему не приведут, поэтому надо бы как-то мягко закругляться с этим "базаром". Просто назови меня тупым болтуном и закончим на этом :))
     
  8. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Хорошо. Смотрим первую часть задачи

    "Дан массив чисел (dwords)(например длин из предыдущих задач)

    и его длина .

    выделить правильно память для таблицы множества на котором построен массив (мощность * 4*2 + 4)"

    Т.е. нам нужно найти мощность. Что тут неконкретного?

    Сколько разных чисел присутсвует в массиве.

    Этот кирпичик обсуждался.
     
  9. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Вот пойди догадайся, что имелась ввиду мощность из задачи №13 - до меня только сейчас дошло...

    Ну да ладно, дело прошлое
     
  10. captain cobalt

    captain cobalt New Member

    Публикаций:
    0
    Регистрация:
    21 дек 2003
    Сообщения:
    222
    Адрес:
    /ru/perm
    Смысл в том, чтобы давать им осмысленные словесные названия, а не просто номера.
     
  11. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Понятно. Но осмысленное название может содержать подсказку. Не хочется лишать участников "озарений" :)