Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Оценка задачи N 23
 
 автор: cheops   (13.10.2008 в 00:31)   письмо автору
 
 

Сейчас задачи проверены и высказано мнение по каждой из них. Здесь будет подводится итоги конкурса.

  Ответить  
 
 автор: cheops   (13.10.2008 в 01:20)   письмо автору
 
   для: cheops   (13.10.2008 в 00:31)
 

Все три скрипта (001, 002, 003) получились очень аккуратными, поэтому по читабельности задачи не оценивались. Самое приятное, что все скрипты правильно вычисляют ответ.
Скорость различается значительно, самая большая скорость у скрипта 001, который использует библиотеку расширения GMP для работы с гиганскими числами. Несмотря на то, что дождаться ответа в случае задач 002 и 003 невозможно, при вычислении числа с 10000 единиц, вариант 002 работает на порядок быстрее 003. К сожалению, вторая часть задачи (вычисления длины числа) не вызвала энтузиазма :))) - в большинстве случаев прагматически настроенные участники решили её в лоб - просто подсчитав длину файла. В виде самостоятельного скрипта эта часть оформлена только в задачи 003, в задаче 001 участник выкрутился тем, что передает одному и тому же скрипту GET-параметр - в принципе формально это удовлетворяет условию задачи, однако на практике для вычисления длины приходится перемалывать задачу всякий раз, хотя возможно аналитическое решение задачи. В ответе 002 отдельного файла для второй части не нашел, поэтому снял бал с правильности решения.
              001   002   003
Правильность   5     4     5
Скорость      10     1     0
Итого         15     5     5

Таким образом, победителем является участиник N 001 Eugene77 (пожалуйста свяжитесь со мной по адресу igor @ softtime.ru и сообщите о выбранной вами книге, адресе куда её можно выслать и т.д.).

  Ответить  
 
 автор: ddhvvn   (13.10.2008 в 11:33)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

Вот это подстава!!! Е-мае!!!
Special for BinLaden: фуу! ах вот как надо было, а я то думал... ну и все остальное... =))
Да я про эти gmp_ вспомнил через минуту после того как прочитал условия!
Блин это ж реально нечестно! Я тут извращался, думал раскладывать надо как то число... :-DD

для Хеопса и Трианона: И вот скажите мне тогда - В ЧЕМ СМЫСЛ ЗАДАЧИ? Узнать/вспомнить про gmp функции?

Все! Значит буду публиковать любое, даже самое тупое/простое (пусть никто не принимает на свой счет=) ) на мой взгляд решение

P.S.: конечно же респект Евгену, что не стал в отличии от некоторых "изобретать велосипед"...

  Ответить  
 
 автор: cheops   (13.10.2008 в 11:49)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 11:33)
 

>для Хеопса и Трианона: И вот скажите мне тогда - В ЧЕМ СМЫСЛ ЗАДАЧИ?
Не бояться страшных на вид задач и не следовать академической чистоте в инженерных условиях (если задача академическая - это обычно специально оговаривается - не пользоваться тем и этим). На ринге вы не имеете права ударить ниже пояса, на улице - это самый лучший удар. Задача была уличная :))), как из сверхмедленного интерпретатора выжать все что только можно.

> Узнать/вспомнить про gmp функции?
Скорее всего Eugene77 до этой задачи с GMP вообще не работал. Тут скорее ориентация важна, умение работать с мануалом, опыт, интуиция.

  Ответить  
 
 автор: Trianon   (13.10.2008 в 15:46)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 11:33)
 

Всё ж таки основной целью задачи ставилось
а) получить файл с означенным числом
б) вычислить число цифр.
О допустимости использования стандартных расширений php явно было объявлено в условиях.

Я мог бы понять возражения участников 002 и 003 на кажущуюся несправедливость оценки. Но Ваше...

Почему с моей точки зрения несправедливость именно кажущаяся.
Я так понял, результат в решениях 002 и 003 получен не был.
Обычно когда задача вычислительно настолько сложна, что разом её не решить, пытаются хотя бы оценить время решения.

Участник 002 написал, что его скрипт не успеет посчитать число.
Участник 003 не сообщил ничего, но судя по скрипту, тот считает еще медленнее, чем 002.

С частью (б) задания, на мой взгляд, не справился никто.
Впрочем, это не основная часть.

  Ответить  
 
 автор: ыыыы=)   (13.10.2008 в 16:58)   письмо автору
 
   для: Trianon   (13.10.2008 в 15:46)
 

Прежде всего поздравляю с победой Eugene77.

>С частью (б) задания, на мой взгляд, не справился никто.
А как решать надо было?у меня даже никаких идей нет((

  Ответить  
 
 автор: cheops   (14.10.2008 в 00:56)   письмо автору
 
   для: ыыыы=)   (13.10.2008 в 16:58)
 

Из письма Trianon-а
...то есть ceil(log10(2)*$number_of_bits) ? 
Хорошо, пусть будет. 
Очень возможно что это тоже для кого-то сюрприз :) ...

  Ответить  
 
 автор: ddhvvn   (13.10.2008 в 18:01)   письмо автору
 
   для: Trianon   (13.10.2008 в 15:46)
 

>Я мог бы понять возражения участников 002 и 003 на кажущуюся несправедливость оценки. Но Ваше...

пардон, а где я сказал, что оценки не справедливы? =)

  Ответить  
 
 автор: BinLaden   (13.10.2008 в 18:10)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 18:01)
 

> пардон, а где я сказал, что оценки не справедливы?

Пардон, а где Trianon сказал, что Вы сказали, что оценки несправдливы?

  Ответить  
 
 автор: ddhvvn   (13.10.2008 в 19:00)   письмо автору
 
   для: BinLaden   (13.10.2008 в 18:10)
 

...>Я мог бы понять возражения участников 002 и 003 на кажущуюся несправедливость оценки. Но Ваше...

  Ответить  
 
 автор: Trianon   (13.10.2008 в 18:59)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 18:01)
 

тогда что Вы имели в виду под словами "это ж реально нечестно"?
Я понял, что именно то, что победа присуждена участнику, который воспользовался реализованными инструментами, вместо того, чтобы писать всю арифметику самому.

  Ответить  
 
 автор: ddhvvn   (13.10.2008 в 19:04)   письмо автору
 
   для: Trianon   (13.10.2008 в 18:59)
 

Ну фиг знает! :-D

Могли бы сказать сказать что задача "не академическая" и нужно пользоваться "уличными методами" =))

  Ответить  
 
 автор: Trianon   (13.10.2008 в 19:21)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 19:04)
 

Кто мешал Вам решить её академическими методами?
Но именно решить?

Я бы оценил скрипт, который бы работал в условиях стоящего set_time_limit(), но результат всё же выдавал.

  Ответить  
 
 автор: ddhvvn   (13.10.2008 в 19:44)   письмо автору
 
   для: Trianon   (13.10.2008 в 19:21)
 

академическими - мозг мешал! ))) я писал об этом

  Ответить  
 
 автор: cheops   (14.10.2008 в 01:03)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 19:04)
 

>Могли бы сказать сказать что задача "не академическая" и нужно пользоваться "уличными
>методами" =))
Об этом было недвухсмыслено сказано - фактически было разрешено пользоваться всем, чем угодно, было даже сказано каким расширением следует пользоваться для решения задачи (с последним мы даже помоему переборщили :).

  Ответить  
 
 автор: ddhvvn   (14.10.2008 в 10:28)   письмо автору
 
   для: cheops   (14.10.2008 в 01:03)
 

1)> Выведите самое большое простое число в десятичном представлении в файл (отдельно подсчитайте время формирования десятичного представления и время записи полученного результата в файл). Для решения задачи допускается использовать ядро PHP и его стандартные расширения.

>...было даже сказано каким расширением следует пользоваться для решения задачи (с последним мы даже помоему переборщили :).

я не придираюсь, но где? :)

  Ответить  
 
 автор: cheops   (14.10.2008 в 11:22)   письмо автору
 
   для: ddhvvn   (14.10.2008 в 10:28)
 

Хм... да из последней редакции имя расширения удалилось :))). Изначально фраза
Для решения задачи допускается использовать ядро PHP и его стандартные расширения.
звучала как
Для решения задачи допускается использовать ядро PHP и его стандартные расширения, в том числе и GMP.
Однако, в последний момент, редактируя текст задачи я посчитал это слишком явной подсказкой.

  Ответить  
 
 автор: ddhvvn   (14.10.2008 в 15:38)   письмо автору
 
   для: cheops   (14.10.2008 в 11:22)
 

тогда все ясно )

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 18:38)   письмо автору
 
   для: ddhvvn   (13.10.2008 в 11:33)
 

>
>для Хеопса и Трианона: И вот скажите мне тогда - В ЧЕМ СМЫСЛ ЗАДАЧИ? Узнать/вспомнить про gmp функции?
>
Кстати, присоединяюсь!
Впрочем, я уже высказывал своё непонимание, но тогда Трианон велел мне не раздувать "Флэйм".

Но, теперь уже просто очевидно,что если бы задача содержала выдачу результата в окно браузера с возможностью докачки, то
1. никто бы не смутился использовать джимп
2. участников было бы больше
3. педагогическая сторона была бы больше,
4. а значит и интерес к теме увеличился бы

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

книга по MySQL мне действительно очень нужна, и я торжествую, конечно
Спасибо огромное Хеопсу!

Наверняка он и придумает как подписать её интересно, чтобы я потом мог всем хвастаться - он же писатель! (Упомянет про форум, наверно)

  Ответить  
 
 автор: ddhvvn   (14.10.2008 в 18:56)   письмо автору
 
   для: Eugene77   (14.10.2008 в 18:38)
 

>А так не могу отделаться от ощущеня,что меня "подставили"
>Наверно так чувствует себя миллинонный покупатель, когда вдруг гремит музыка и ему вручают миллион долларов.


Странное сравнение =))))

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 17:05)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

Вот это сюрприз!
Оказывается я выиграл!
Совершенно не ожидал!
Просто написал первое, что пришло в голову, чтобы потом было с чем сверить ответ, и послал на всякий случай.
Потом выпала минутка подумать, стал пробовать решение оптимизировать, но понял, что скорость уже существенно не поднять, даже если не использовать функцию возведения в степень, там где можно обойтись более быстрыми функциями.

Посчитал что будет куча одинаковых по скорости решений и выбирать будет трудно. Поэтому забросил это занятие.

А то, что вторая часть подразумевала свою отдельную оптимизацию по скорости, честно, просто не понял. Иначе, подумал бы об аналитике. У меня просто возникло понимание, что надо скоростную программу писать, но что обе надо оптимизировать по скорости так и не дошло. Прямо это не указано, а догадаться не у всякого ума хватит... хотя, даже мягко говоря, не трудно было догадаться, даже теперь очень странно, что я не догадался. Извините!

УРа!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Я выиграл книгу!!!!

Кстати, подскажите, какая из них самая продвинутая по MySQL.?
Основы я вроде знаю, хотя, впрочем, в глубинах SELECT_а пока плаваю.
А хотелось бы все возможности из MySQL достать... не только SELECT : )
Что посоветуете?

  Ответить  
 
 автор: ddhvvn   (14.10.2008 в 17:20)   письмо автору
 
   для: Eugene77   (14.10.2008 в 17:05)
 

Я бы, наверное, выбрал http://www.softtime.ru/sql/?id_article=104

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 17:26)   письмо автору
 
   для: ddhvvn   (14.10.2008 в 17:20)
 

>Я бы, наверное, выбрал http://www.softtime.ru/sql/?id_article=104
1. Почему?
2. Думаете там SELECT серьёзно раскрывается?
3. Многотабличные запросы после чтения книги для меня больше проблемой не будут?

  Ответить  
 
 автор: cheops   (14.10.2008 в 19:39)   письмо автору
 
   для: Eugene77   (14.10.2008 в 17:26)
 

Это самое описание описание MySQL в наших книгах - мы постарались раскрыть все темы максимально подробно.

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 17:21)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

>сообщите о выбранной вами книге

У вас в описании я не нашёл ни даты издания ни количества страниц предлагаемых для выбора книг.
Меня больше всего интересуют те, которые касаются MySQL.
Как бы мне узнать эту недостающую информацию?

  Ответить  
 
 автор: cheops   (14.10.2008 в 19:36)   письмо автору
 
   для: Eugene77   (14.10.2008 в 17:21)
 

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

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 17:50)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

>сообщите о выбранной вами книге

Скажите, а книгу вы вместе с диском вышлете?
Мне через GPRS не очень приятно будет примеры скачивать, если нет.
Но я без претензий - скажете нет - скачаю.

  Ответить  
 
 автор: cheops   (14.10.2008 в 19:37)   письмо автору
 
   для: Eugene77   (14.10.2008 в 17:50)
 

Компакт-диск конечно будет вложен в книгу (вернее не выложен из книги :).

  Ответить  
 
 автор: Eugene77   (14.10.2008 в 18:06)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

>(пожалуйста свяжитесь со мной по адресу igor @ softtime.ru и сообщите о выбранной вами книге, адресе куда её можно выслать и т.д.).

Получил ваше письмо и уже ответил на него

  Ответить  
 
 автор: Кузнецов М.В.   (17.10.2008 в 05:43)   письмо автору
 
   для: Eugene77   (14.10.2008 в 18:06)
 

Поздравляю Вас!
Книга готова к отправке и скоро будет у Вас.

  Ответить  
 
 автор: Eugene77   (24.10.2008 в 19:49)   письмо автору
 
   для: Кузнецов М.В.   (17.10.2008 в 05:43)
 

>Книга готова к отправке и скоро будет у Вас.

Жду с нетерпением книгу или хотя бы сообщение, что она отправлена!

  Ответить  
 
 автор: cheops   (26.10.2008 в 02:09)   письмо автору
 
   для: Eugene77   (24.10.2008 в 19:49)
 

Вы не получали мое сообщение? На всякий случай продублирую его тут - книга отправлена по вашему адресу в четверг 23.10.2008.

  Ответить  
 
 автор: Eugene77   (28.10.2008 в 18:39)   письмо автору
 
   для: cheops   (26.10.2008 в 02:09)
 

>Вы не получали мое сообщение? На всякий случай продублирую его тут - книга отправлена по вашему адресу в четверг 23.10.2008.

Хорошо, что вы здесь продублировали!
Письма не получал.
Видимо спам фильтр у Яндекса как-то необычно настоили - уже не первую переписку мне на середине обрывает.
Зато спам сыплется регулярно.
Впрочем, ко всему можно привыкнуть...

Спасибо вам!

  Ответить  
 
 автор: Eugene77   (20.11.2008 в 18:14)   письмо автору
 
   для: cheops   (26.10.2008 в 02:09)
 

Получил вашу книгу.
Ура!
и Спасибо!
Книга хорошая.
Толстая!
Изложено всё просто, с примерами.
Уже успел найти несколько важных моментов, которые не знал.
Такую книгу обязательно надо иметь! Как я без неё жил?!
Правда, сразу и недостаток один обнаружил: нет индекса ключевых слов MySQL

  Ответить  
 
 автор: cheops   (20.11.2008 в 18:37)   письмо автору
 
   для: Eugene77   (20.11.2008 в 18:14)
 

>Правда, сразу и недостаток один обнаружил: нет индекса ключевых слов MySQL
Смотрите раздел индекса "Оператор", "Конструкция" и "Функции" - слов очень много, поэтому они разносятся по назначению.

  Ответить  
 
 автор: Keda   (14.10.2008 в 18:35)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

Мда, про GMP я совершенно не знал. Но без него обходиться было весело :).
Давайте еще задачек разных и интересных.

  Ответить  
 
 автор: @ndry   (06.09.2009 в 11:24)   письмо автору
 
   для: cheops   (13.10.2008 в 01:20)
 

Мне кажется помнить наиболее производительную функцию с мануала php не является нормальной задачей. В итоге вы сдесь не учите людей ничем новому, а награждаете рандомно).

Лучше бы заставили всех работать со сдвигом разрядов и т.п. битовым операциям.

> Для решения задачи допускается использовать ядро PHP и его стандартные расширения.
Если я правильно понял, что стандартне - расширения, которые включены в PHP по умолчанию, то GMP не является таковым. Я например скачал бинарник с сайта и не увидел там DLL файла php_gmp.dll (PHP 5.3 VC6).
Более того http://ru.php.net/manual/en/gmp.installation.php говорит
Installation

In order to have these functions available, you must compile PHP with GMP support by using the --with-gmp option.

  Ответить  
 
 автор: Eugene77   (07.09.2009 в 19:48)   письмо автору
 
   для: @ndry   (06.09.2009 в 11:24)
 

Сомнений нет, что здешний конкурс ориентирован не на выявление лучшего программиста России, а лишь на проверку знания основ.
Он регулярно выявляет у участников пробелы в знаниях именно на тех местах, где важно очень чётко ориентироваться в материале для того кто хочет стать РНР программистом.
Поэтому он намного ценнее, чем тот случай, где соревнование ради соревнования.
Задачек на РНР можно найти множество, но именно на те, которые пропускает местная цензура, не надо жалеть времени чтобы прорешать - все они на подбор исключительно полезны.

Последняя, может быть, чуть в меньшей степени, чем другие, но у неё, не забывайте, есть вторая часть. В общем, тот кто её так или иначе решил, с битами уже умеет работать.

В целом, такая направленность конкурса вполне соответствует направленности сайта.
Это ведь не сайт профи, а сайт для начинающих.

Так мне кажется. Не настаиваю на правильности своего мнения.

  Ответить  
 
 автор: @ndry   (08.09.2009 в 23:28)   письмо автору
 
   для: Eugene77   (07.09.2009 в 19:48)
 

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

Для того, чтобы заполнить пробел в знаниях мануала не хватит никаких задач, функций там столько, что никто, а темболее новичёк, не сможет сориентироваться.

Для заполнения пробелов достаточно написать статью в которой нужно убедить всех в необходимости хотя-бы обзорно пройтись по php.net чтобы иметь представления о возможностях, а также дать список ссылок и библиотек, которые могут оказаться наиболее полезными в работе.

P.S.: и всё-же использовать gmp по условиям задачи было нельзя, она не являеться дефакто в поплуярных билдах PHP, обычно все стараются скачать последние версии ПО и будут использовать PHP 5.3... Может автор решения 002 знал о подобных функциях, но у него екстеншн не был по дефолту включён? В таком случае он проиграл из-за некомпетентности автора задачи.

  Ответить  
 
 автор: Eugene77   (13.09.2009 в 20:18)   письмо автору
 
   для: @ndry   (08.09.2009 в 23:28)
 

>
>P.S.: и всё-же использовать gmp по условиям задачи было нельзя, она не являеться дефакто в поплуярных билдах PHP, обычно все стараются скачать последние версии ПО и будут использовать PHP 5.3... Может автор решения 002 знал о подобных функциях, но у него екстеншн не был по дефолту включён? В таком случае он проиграл из-за некомпетентности автора задачи.


У меня тоже не было подключено это расширение.
Я его специально прикрутил.

На реальных хостингах оно зачастую подключено.
Формулировка задачи допускала некоторый диапазон толкований того, что можно, и того что нельзя. Из-за этого ваша критика и возникла.
Я согласен, что лучше при формулировке задачи показывать список подключенных модулей, которые разрешено использовать для решения.

  Ответить  
 
 автор: @ndry   (15.09.2009 в 17:20)   письмо автору
 
   для: Eugene77   (13.09.2009 в 20:18)
 

Собственно получается вы нарушили правила и признались в этом =).

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

  Ответить  
 
 автор: cheops   (15.09.2009 в 17:39)   письмо автору
 
   для: @ndry   (15.09.2009 в 17:20)
 

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

Команда математиков из Калифорнийского университета в Лос-Анджелесе сумела объединить мощности 75 компьютеров и открыла новое большое простое число, которое на сегодняшний день признано самым большим. За это открытие калифорнийские ученые получили премию фонда Electronic Frontier в $100 тыс.

Это сразу должно настораживать - зачем здесь эти 75 компьютеров и 100 000 $, когда решение предполагается беплатное, на машине произвольной мощности, да ещё и на медленном PHP?

Ещё раз хочу процитировать свой ответ, который дал выше

>для Хеопса и Трианона: И вот скажите мне тогда - В ЧЕМ СМЫСЛ ЗАДАЧИ?
Не бояться страшных на вид задач и не следовать академической чистоте в инженерных условиях (если задача академическая - это обычно специально оговаривается - не пользоваться тем и этим). На ринге вы не имеете права ударить ниже пояса, на улице - это самый лучший удар. Задача была уличная :))), как из сверхмедленного интерпретатора выжать все что только можно.

> Узнать/вспомнить про gmp функции?
Скорее всего Eugene77 до этой задачи с GMP вообще не работал. Тут скорее ориентация важна, умение работать с мануалом, опыт, интуиция.


Мы стараемся не давать олимпиадных задач - все наши задачи преследуют какие-то практические аспекты: чтобы реальные приложения были более безопасны, быстрее, читабельны, элегантнее и быстро разрабатываемые. Заметьте, что академическая чистота, валидность HTML-разметки, реализация наиболее сложного математического алгоритма практически никогда не ценились. Обычно оценке подвергалось то, что в первую очередь нужно для работы в реальной команде - ум, хитрость, скорость, забота о товарище по команде.

  Ответить  
 
 автор: @ndry   (15.09.2009 в 23:49)   письмо автору
 
   для: cheops   (15.09.2009 в 17:39)
 

Мне в вашей цитате практически не с чем спорить, но вы говорите об отсутствии академических правил, но одно же есть, из-за него собственно и весь сыр бор =)

Я вообще увидел эту задачу и реализации уже когда конкурс был окончен, почитал комментарии и мне стало очень интересно почему одно единственное ограничение, которое было дано в задании, может быть так-же нарушено.

Почему бы просто не получить уже сгенерированное число и записать в переменную в коде? По-моему такой "удар ниже пояса" будет наиболее коварным =).

  Ответить  
 
 автор: cheops   (15.09.2009 в 23:55)   письмо автору
 
   для: @ndry   (15.09.2009 в 23:49)
 

Скрипт может банально в память не влезть, все ж таки больше 10 Мб, обычно скрипт ограничивают 8 Мб.

  Ответить  
 
 автор: @ndry   (16.09.2009 в 13:34)   письмо автору
 
   для: cheops   (15.09.2009 в 23:55)
 

А кто мешал установить другие параметры в php.ini? Это дело нескольких секунд, кроме того существует ф-ция ini_set, и насколько помню:
memory_limit стандартно 128 Мб

  Ответить  
 
 автор: cheops   (16.09.2009 в 13:45)   письмо автору
 
   для: @ndry   (16.09.2009 в 13:34)
 

На хостингах цифры, как правило, другие и менять этот параметр запрещено на уровне виртуального хоста. К этому бы я придрался :)))

  Ответить  
 
 автор: @ndry   (16.09.2009 в 22:30)   письмо автору
 
   для: cheops   (16.09.2009 в 13:45)
 

А при чём тут хостинг?) Задача ориентирована на жёсткие ресурсы? Вы же сами говорили что академических заданий не даёте, а тут всплыла нагрузка).

И как часто возникает задача получить "самое большое число" на бесплатном или дешёвом хостинге?

А вообще хост можно снять любой, хоть стойку целую, кто мне запретит там натыкать планок гиг эдак с 8? Или вы только на свой ориентировались?

P.S. как удар ниже пояса (коварнейший удар) можно хакнуть сервер, на котором стоит скрипт, и увеличить объём памяти до максимума, удары ниже пояса тут любят ;).

  Ответить  
 
 автор: dios™   (09.10.2009 в 18:34)   письмо автору
 
   для: @ndry   (16.09.2009 в 22:30)
 

А зависть - это плохая вещь. Из-за подобных придирок скорее всего уже больше года ни одной задачи больше нету и, скорее всего, не намечается в ближайшее время, как это не печально...

  Ответить  
 
 автор: DEM   (09.10.2009 в 20:13)   письмо автору
 
   для: dios™   (09.10.2009 в 18:34)
 

Да нет, просто хорошую задачу придумать, что бы там было не просто втупую покодировать, а еще и были подводные камни. К примеру задачу, которую давал ТРИАНОН, вроде бы и просто, ан нет, подводный камень с логином пользователя был... Но если кто придумает задач - буду благодарен (и, думаю, не только я)

  Ответить  
 
 автор: dios™   (10.10.2009 в 02:53)   письмо автору
 
   для: DEM   (09.10.2009 в 20:13)
 

Но это опять же, смотря какой направленности. Я так понимаю, что требуется "прикладная" задача с подвохами, а не "олимпиадного" типа.

  Ответить  
 
 автор: Trianon   (10.10.2009 в 11:40)   письмо автору
 
   для: dios™   (09.10.2009 в 18:34)
 

Откровенно говоря, в замечаниях @andy есть и справедливое зерно.

Что же до того, почему нету задач... то
Почему нет задач?
А потому как их не присылают.

1. Ну почему же нету. Их есть у меня... но (в порядке убывания важности причины:)
- последние три задачи были моими, и предлагать это даже не нескромно, а просто себе во вред.
У посетителей может создаться ложное впечатление, что ни у кого другого задач не принимают, мне это даром не сдалось.
- я вообще-то тоже хочу поучаствовать в решении, а авторство такое участие автоматически исключает,
- в последний раз система обработки задач не допускала формирование и оценку задачи независимым (от администрации) жюри, очевидно сейчас в этом плане ничего не изменилось.
А у меня с Хеопсом сейчас сезонное обострение терки, конструктивной совместной работе не способствующие :(

2. другие посетители не хотят, а чаще - не могут.
- чтобы придумать задачу, нужно время потратить, мозгами покипеть, а бОльшая часть активных посетителей их (мозги) даже на собственные проблемы тратить не приучена. Десяток другой посетителей, кому было что сказать, сейчас либо молчат в тряпочку, либо вообще из портала убраны "модераторским катком" (название автора метода) . Устройство само по себе неплохое, но ошибок первого рода у него чересчур.

3. Еще остается администрация (это, кстати, относится и к проблеме оценки задач).
Она загружена, и ей не до задач, это невооруженным глазом видно.
Максим Кузнецов заглядывает сюда раз в месяц (и по-моему, просто для контроля ситуации). Сергей Голышев с год носа не казал. Игорь Симдянов еще месяц-другой назад тоже прорывался сюда крайне эпизодически - а сейчас, когда присутствет - пытается отвечать на любой форумный вопрос. Какие уж тут задачи.


Так что если остался еще у кого порох в пороховницах - придумывайте задачи, отправляйте cheops'у и М.В. Если до разбора полетов не дойдет, то хотя бы порешаем.

  Ответить  
 
 автор: cheops   (10.10.2009 в 12:31)   письмо автору
 
   для: Trianon   (10.10.2009 в 11:40)
 

>А у меня с Хеопсом сейчас сезонное обострение терки, конструктивной совместной
>работе не способствующие :(
/*Смотрит с интересом*/ Ну эта... конструктивное общение потому и называется конструктивынм, что ему никакие конфликты или квазиконфликты не мешают.

PS На этом форуме никаки терок не предусмотрено - предусмотрены только правила, и модераторы, которые за выполнением этих правил следят. Я тоже вынужден подчинятся этим правилам, хотя тоже не в восторге от некоторых вопросов и ряд даже игнорирую из-за формы и оформления. Для так называемых "терок" создан отдельный форум - вот там можно почти все.

  Ответить  
 
 автор: @ndry   (11.01.2010 в 04:17)   письмо автору
 
   для: dios™   (09.10.2009 в 18:34)
 

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

  Ответить  
 
 автор: DEM   (13.10.2008 в 02:02)   письмо автору
 
   для: cheops   (13.10.2008 в 00:31)
 

Я еще ен читал решение и педыдущий пост, но просто напишу для себя такой ворпосик... При возведении в степень было бы правильно сделать так:
... э-э-э-э... как бы начать...
Ну вот к примеру:
2 в 8 степени = 128
но это можно было бы запистаь так: (((2 во второй степени) в третьей) *2 )

Ну пример конечно ен удачен, но при больших числах разница была бы видна... Суть в том, что бы число (двойку) возвести во вторую степень (или больше), потом получившее ся число возвести в степень намного меньшую чем было заждумано (там же 4 в 5-ой степень - это 2 в 10-ой = 1024), ну а потмо просто еще оин разок умножить на 2...

Я ен знаю, пользовался ли кто нить таким способм или нет, просто интересно правильно я мыслю или нет :)


ЗЫ. или там вообще в степен не надо было возводить?


Забыл написать:

Поздравляю победителя, Eugene77! Скрипт поулчился ООчень коротким, но рабочим! Вот что значит хорошо знать функции! Молодец!

  Ответить  
 
 автор: DEM   (22.10.2008 в 12:28)   письмо автору
 
   для: cheops   (13.10.2008 в 00:31)
 

Скажите, а если бы не было функций которым пользовался Eugene77, эту задачу можно было бы решить? И если да, то как? Просто интересно ;)

  Ответить  
 
 автор: BinLaden   (22.10.2008 в 16:10)   письмо автору
 
   для: DEM   (22.10.2008 в 12:28)
 

А Вы 2 других решения смотрели?

  Ответить  
 
 автор: DEM   (22.10.2008 в 16:58)   письмо автору
 
   для: BinLaden   (22.10.2008 в 16:10)
 

Но там писали, что они "зависают" не закончив вычисления...

  Ответить  
 
 автор: cheops   (22.10.2008 в 22:32)   письмо автору
 
   для: DEM   (22.10.2008 в 16:58)
 

Все три ответа правильные (другое дело, что они отличаются по скорости выполнения). Более того, если бы не было предложено решение с GMP-функциями, в качестве победившего было признано одно из оставшихся двух решений.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования