Ян (ahiin) wrote,
Ян
ahiin

Category:

Пояснение\указание

к менее типичной задаче.

Очевидно, я недостаточно внятно сформулировал задачу, в результате ряд уважаемых читателей решили, что основная проблема — это оценка остатка и увлеченно принялись эту оценку искать. Сам по себе, поиск такой оценки  — дело интересное, но в рамках исходной задачи не самое важное.

Суть в том, что ряд, который я вам предложил, "в лоб" с требуемой точностью не суммируется. (Уважаемый son_0f_morning меня убедительно опроверг, сумев уложиться в лимит времени суммируя исходный ряд. Снимаю шляпу, посыпаю голову пеплом.) Изучив его код, я понял, что с пеплом поторопился. Идея воплощена годная, но это очень сильно не "в лоб".
А чтобы вы свою жизнь не тратили на эти обреченные попытки, установлен жесткий лимит времени (напомню, если ваша программа считает дольше 10 секунд, значит задача не решена \надо было ставить 100 мс\). И вот найти выход, извернуться и просуммировать, таки, ряд, вот в этом суть.

Для облегчения жизни присутствующих, под катом выложены результаты моих расчетов. Абсолютная погрешность заведомо не более 1e-14, так что сравнивайте со своими расчетами смело, не заморачиваясь оценками хвостов. Суть не в хвостах.


1.6449340668482264
1.5346072449045607
1.4408788415467229
1.360082586782444
1.2895778007910417
1.2274112777602189
1.1721051961250153
1.1225193425357527
1.0777588727442429
1.0371109178506583
0.99999999999999989


Время счета моей (изрядно продвинутой) современной версии составило в один поток около 3 миллисекунд (на самом деле около 8 микросекунд, если не включать время работы потока вывода). Но даже то, что я в 2002 году написал на Турбо Паскале, в лимит времени укладывалось. Дерзайте.

И еще. Имейте в виду. Использование всевозможных констант при расчете вполне кошерно. А вот если вы используете формулы, в которых выражение, содержащее аргумент Х, попадает под действие трансцендентной функции (особенно такой нетривиальной, как дигамма), то значит вы жульничаете, перекладывая задачу суммирования ряда на плечи автора математической библиотеки.
Tags: задачка, математика, программирование, численные методы
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 3 comments