Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 
Вернуться
Тема: Смена компиляторов на ACMP.RU
1 2
  1  Радионов Богдан Анатолиевич, 04 июня 2015 г. 13:35:24
      Присоединюсь к автору поста про Python 2.7
Все же нужно учитывать, что python 3x - это не просто шаг вперед, это еще и изменение целого ряда разнокалиберных фич. Спорить можно до хрипоты о плюсах и минусах 3x и 2.7, но 2.7, априори, распространен настолько, что очень хотелось бы его видеть и тут. Ну очень-очень!
  2  Алексеев Михаил Николаевич, 21 мая 2015 г. 14:22:27
      Огромное спасибо за стандартный ввод и за питон!
     Пожалуйста :)
  3  Демиденко Виталий, 16 мая 2015 г. 5:21:00
      Столько лет вы говорили, что не будете добавлять языки и обновлять компиляторы, что произошло?:) И ещё, в условиях задач в примерах ещё остались рудименты INPUT.TXT и OUTPUT.TXT, это может путать.
     Я не говорил, что не буду обновлять компиляторы. Я говорил, что не собираюсь это делать. И это продолжалось до последней личной олимпиады в ИКИТ, где я и сказал, что собираюсь их обновить. Что и сделал. В условиях задач пусть остаются INPUT.TXT и OUTPUT.TXT, это не особо мешает решать задачи, т.к. решения можно сдавать и с файлами, как раньше, просто добавилась возможность делать это без файлов. Собственно, в разделе "Работа в системе" об этом написано.
  4  Москаленко Андрей Владимирович, 11 мая 2015 г. 21:54:41
      "Вы принципиально не читаете справочные разделы сайта?"
Извините, не подумал почитать справку...
  5  Хворых Павел, 08 мая 2015 г. 16:59:17
      To Москаленко Андрей Владимирович:
Вы принципиально не читаете справочные разделы сайта? В разделе GNU C++ 4.9.2 прямо написано: "компилятор поддерживает стандарт C++11". По флагам компиляции видно, что поддержка с++11 включена. Версия 4.9.2 является очень свежей версией, которая поддерживает не только весь с++11, но и некоторые фичи с++14.
Visual Studio 2008 не поддерживает с++11 вообще, потому что во время выхода этой среды такого понятия вообще не существовало: тогда эта штука называлась с++0x и была в активной разработке. Внедрение с++11 в студию началось с версии Visual Studio 2010.
  6  Москаленко Андрей Владимирович, 08 мая 2015 г. 16:05:22
      И все-таки еще раз задам вопрос, С++11 есть? Всякие auto/лямбды поддерживаются?
     Да, но только компилятором GNU C++ 4.9.2
  7  Капцов Александр Александрович, 06 мая 2015 г. 10:42:38
      На самом деле, хорошо, я доволен тем, как сейчас считается рейтинг лучших попыток. Для себя пишешь с нормальными переменными, сдаёшь ужатым.
Если твой код получился в 10 раз длиннее лучших попыток - то значит ты где-то набыдлокодил. Наоборот, такая отточка мысли раскрывает задачу с новой стороны.
  8  Москаленко Андрей Владимирович, 05 мая 2015 г. 16:35:44
      1)Как насчет С++11?
2)Вам не кажется что эта борьба за символы бред? Ведь реально все делают названия идентификаторов однобуквенные, а это не есть хорошо. Я согласен с тем что написал Меньшиков Фёдор Владимирович.
     Я уже отвечал на подобный вопрос. Да, это бред. Не участвуйте в этом, если так считаете. Считайте, что нет "лучших попыток".
  9  Хворых Павел, 05 мая 2015 г. 15:40:03
      To Меньшиков Федор:
Не получится. Вот вам шаблон решения любой задачи на питоне.
class t7072696E7428343229: pass
eval( base64.b16decode( t7072696E7428343229.__name__[1:] ).decode("utf-8"))
Все решение зашито в имени переменной. Ваша методика будет возвращать одно и то же число для решений по такому шаблону.

В плюсах ваш способ подсчета даст возможность делать прекалки произвольной длины почти на халяву, так как можно будет писать так:
#define STR(X) #X
char s[] = STR(1234abcd); // char s[] = "1234abcd";

Вместо этого я хотел бы предложить администратору все-таки сделать топ по времени выполнения. Для повышения точности можно считать суммарное (или среднее), а не максимальное время работы на тестах.
     Я понимаю, что логично делать Топ по времени выполнения, но время (равно как и память) у нас считается не точно, а приближенно. Это только увеличит число повторных сдач одного и того же кода.
  10  Меньшиков Фёдор Владимирович, 05 мая 2015 г. 10:46:35
      В связи с недавним обнулением "лучших попыток" у меня есть предложение немного изменить методику подсчёта "лучших попыток", чтобы примирить и её исходный смысл, и хороший стиль программирования. Я предлагаю имена любой длины считать за один символ. Сначала я думал предложить считать количество лексем, но в интерпретируемых языках любую программу можно записать всего где-то 4 лексемами - что-то вроде вычислить("текст программы одной строкой"). Поэтому символы в строках я предлагаю считать именно по длине строки, а вот имена идентификаторов (что бывает важно для стиля программирования) предлагаю в этой статистике считать как один символ на всё имя.
     Думаю, что не стоит этому разделу уделять столько внимания.
  11  Капцов Александр Александрович, 05 мая 2015 г. 7:49:58
      Начинаю постигать Пайтон! :) Спасибо)
     Все необходимые дистрибутивы для этого в разделе "Дистрибутивы". Успехов!
  12  Люблю Сейбу, 04 мая 2015 г. 14:29:32
      Предлагаю вообще выпилить этот недотоп, поскольку пускание слюней на укорачивание кода никак не способствует выработке хорошего стиля программирования. Как потом читать код таких вот "олимпиадников"?
     Все верно, этот раздел не очень полезен. Не заходите в него, если он Вам не нужен.
  13  Хворых Павел, 04 мая 2015 г. 14:05:37
      Всё у них есть. Вместо Editor.setOption('mode','text/x-python');
напишите Editor.setOption('mode',{name:'python',version: 3}) и print начнет выделяться правильным цветом.
     Вы про CodeMirror? Я просто еще Syntax Highlighter использую. Нравится он мне меньше, но в чем то более удобен.
P.S. Насчет питона 3.0 Вы верно написали, я уже исправил: print теперь печатается правильно :)
  14  Лапков Никита Алексеевич, 04 мая 2015 г. 11:48:26
      Здравствуйте. Боюсь, что версия Python в Вашем редакторе на сайте на совпадает с версией компилятора, так как print выделяется не как функция, а как ключевое слово.
     Это к разработчикам редактора, у них один питон. Там и в паскале не все красиво.
  15  Лапков Никита Алексеевич, 04 мая 2015 г. 11:18:19
      Здравствуйте. Пожалуйста, добавьте Python 2.7, он более распространен, нежели чем Python 3.4.
     В плане количества написанного кода и числа библиотек - да, а вот в плане изучения детьми и использования в олимпиадном программировании - нет. Все же питон 3.0 более перспективен.
  16  Меньшиков Фёдор Владимирович, 04 мая 2015 г. 10:54:38
      Непонятно, почему для Delphi указаны особые ключи компиляции
-$D- -$R+
Обычно участники соревнования ожидают, что компилятор работает с настройками по умолчанию, что если они не написали сами $R+, то программа будет работать быстро без проверок. А тут получается, что для скорости нужно в явном виде написать $R-. Поскольку в исходнике на Delphi можно любые ключи компиляции определять, я предлагаю убрать эти ключи из строки компиляции.
     На самом деле в отключении информации от дебаггера ничего страшного нет (ключ -$D-), а -$R+ я ставлю для того, чтобы не проходили решения, которые обращаются к несуществующим элементам массива, которые по чистой случайности не влияют на результат. Но раз просите, этот ключ я уберу (а первый оставлю), действительно это существенно влияет на производительность.
  17  Меньшиков Фёдор Владимирович, 04 мая 2015 г. 10:43:59
      Для GNU C++ в строке компиляции указывается размер стека и создаётся макрос ACMP. Хотелось бы то же самое на других языках. Я не особо разбираюсь в VB, Python и C#, но в Java те же самые 2 вещи делаются так:
вместо java Main
нужно java -Xss64M -DACMP="true" Main
     В ближайшее время внесу изменения, только -Xss16M, на нашем компьютере 2000-го года выпуска 64 Мб - многовато для стека :)
  18  Лукьянов Иван, 04 мая 2015 г. 1:01:06
      А почему нельзя было оставить в лучших попытках те программы, которые компилируются хотя бы одним из компиляторов? Т.е. сделать такой "реджадж". А для Бейсика сбросить, т.к. старые тексты на Бейсике не компилируются.
     Реджадж 4 миллионов решений, да еще несколькими компиляторами? Не думаю, что это настолько принципиально. Кому сильно нужен этот топ могут перезалить свои решения.
  19  Хворых Павел, 03 мая 2015 г. 23:08:47
      И это, тут просьба есть. На страничке с топом очень сильно не хватает кнопки возврата к задаче. Сделайте пожалуйста.
     Ок, сделал.
  20  Хворых Павел, 03 мая 2015 г. 22:40:15
      Дико радуюсь g++4.9.2 с c++11.
Дико радуюсь python3.
Дико радуюсь возможности использовать стандартный ввод/вывод.
Дико расстраиваюсь из-за очистки топа, но потом я вспоминаю про Лунева и мне становится немного легче.
P.S. Я джва года ждал это обновление! (с)
     Дико радуемся за Вас :)
1 2

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2017, ICQ: 151483