ZhukV,Цитата:
Разрешённые типы файлов: bmp doc gif html jpe jpeg jpg pdf png psd rar txt zip
Вид для печати
ZhukV,Цитата:
Разрешённые типы файлов: bmp doc gif html jpe jpeg jpg pdf png psd rar txt zip
ZhukV, я тоже плужил сеня ))
нажми Расширенный режим)
Файл с решением прикреплять архивом zip или rar!
Вопрос по первому вопросу: могут ли в числе быть другие римские символы (M, L, ...), и нужно ли их ипользовать при сокращении? Или только X, V и I?
скрипт должен вывысти ответ, римскими буквами тока, которые написаны в задаче, а сами данные не обязательно должны быть римскими?
разъясните плиз
Они есть в римских цифрах, так что почему бы им не включить и их поддержку ?
bumer, если я правильно понял задание то на вход идёт ЛЮБАЯ римская цифра, на выход идёт ЛЮБАЯ римская цифра но тот её вариант который самый короткий из возможных.
Скептически отношусь к такой забаве (весёлого ничего в ней не вижу) но первое задание (если я до конца его понял) было из разряда "30 секунд без работы мозга" так что попробую.
Уважаемые жюри, объясните пожалуйста еще одно:
IV -- Это у Вас 4 или 6?
ZhukV, 4 конечно. это никак не может быть 6
ИМХО задание считаю недопустимым так как чисел
IIIIIIIIIIIIIIII
VIIIIIIIIIII
VVIIIIII
XIIIIII
не существует
Судя по всему не я один с расширением промахнулся :(
Webmaster, то что задание придумано, не повод делать его некорректным :) Вы изменили основное правило записи числа римскими цифрами. Откуда нам знать, может вы еще придумали другие буквы для более короткой записи? (16 - Z например).
Или например откуда нам знать что означает запись IIIII? Согласно правилам мы знаем что III - 3, но что будет если добавить еще I? В правилах не сказано, может вы придумали что последующие повторы отнимают цифры а не добавляют? или умножают?
Для того чтобы задание было корректным, не нужно было упоминать римские цифры, нужно было описать правила записи числа в вашей придуманной системе.
acad, мы написали, на наш манер - это корректная запись!!!!
всем не угодишь, но если писать задания на 5 страниц - его никто не будет читать
p.s. для понятливых. ниже в задании я добавил описание символов = чисел
Уважаемые участники, размещать свои решения на поставленную задачу не поздно до публикации следующего задания
критерий времени (скорость решения) - будет оцениваться только в случае полного совпадения суммы баллов за все задания, что по-моему оч. маловероятно
я правильно понимаю задание, что IIVIIII быть не может? то есть все цифры идут по убыванию?
если нет, то на число IIIIIIIIIIIII можно придумать стопятьсот трактовок.
acad, почему по-вашему запись IIII - не валидна ?
прочитайте википедию, записиь IV вместо IIII стала использоваться только из эстетических убеждений, а не из правил !!!
Webmaster, было такое. но давно. по этому IV уже правило. и кстати в тойже википедии написано - "при этом некоторые из цифр (I, X, C, M) могут повторяться, но не более трех раз."
acad, ну это понятно, числа 4, 9, 40, и им подобные иначе и не записать. я имел в виду, что не будет IVX , которое можно читать как
"(10 без 5) без 1" = 5-1 = IV
или
"10 без (5 без 1)" = 10 - 4 = VI
обе записи одинаковой длины. и хрен тут определишь, какое исправление невалидной записи верно.
имхо, задание совершенно некорректное в плане "даём невалидную запись. запишите её как валидную". невалидная на то и невалидная, что нельзя её восстановить до изначальной с точностью.
Вы уж тогда указывайте, что переходите от больших разрядов к меньшим, или меняйте нафиг задание :D
IVX - невалидное число.
acad, так а я о чём. я привёл пример, когда невалидное число можно трактовать по-разному.
в задании как раз невалидные числа. если цифры стоят по убиванию, как в задании, то преобразовать ещё можно.
если начинается ICC - то тут уже звездец, ни по каким правилам не поймёшь.
Flok, при стандартных методах конвертации IVX превратиться в IV (не потому что там отнимается как-то, а потому то после V не может быть X и он просто обрежется). можно вместо обрезания выводить ошибку.
Натуральные числа записываются при помощи повторения этих цифр. При этом, если большая цифра стоит перед меньшей, то они складываются (принцип сложения), если же меньшая - перед большей, то меньшая вычитается из большей (принцип вычитания)
Википедию читали ?
Цитата:
Для записи целых чисел в римской нумерации используются семь основных чисел:
I = 1
V = 5
X = 10
L = 50
C = 100
D = 500
M = 1000
С их помощью можно записать любое целое число не более 4000, при этом некоторые из цифр (I, X, C, M) могут повторяться, но не более трех раз.
acad, покажите мне источник, которому можно доверять, и в котором написано, что при записи римских чисел, нельзя использовать более трех подряд идущих цифр ???
p.s. вы уходите от темы конкурса - а тема - это PHP
принимайте задание и исполняйте его
а не ищите истину древних времен
Webmaster, источник проверки есть хороший - гугл калькулятор. "IIVIIII in arabic" в гугле напишите.
Кажется господа, начали волноваться :)
Каждый решил задание так, как он его понял. какой смыл спорить о валидаци?? Уже поздно :(
VasyOk, именно по этому на любом ACM'e если задание можно понять и решить больше чем одним способом, то задание снимается.
давайте тогда учитывать, что любое введенное число будет валидным, и спор решен, а суть задания (сократить) останется
VasyOk, как раз не поздно, задания можно выполнять до публикации следующего задания )))
p.s. хватит спорить, задание может и кажется "некорректным" но есть, и его менять мы уже не собираемся, комментарии о том как считать римские числа в задании я пояснил
попрошу обсуждение римских чисел оставить для раздела оффтопик
:0080:
VasyOk, сократить в такуюже "валидную" запись?
Я лично поддерживаю Webmaster -а. Нет разницы, какой именно будет входящая цифра. Нужен только результат, поскольку это задание: выбрать самую оптимальную запись, а не проверять ее по все правилам!!! Наше задание, на PHP это осуществить, что есть вполне возможно!!!
Представьте, что это не конкурс, а заказ от крутого заказчика. Вы бы так же с ним вели дискуссию?
Так разве не запрещено более 1 раза выкладывать решения? Просто может получиться так, что судья уже оценил решение, теперь пользователь опубликовал новое решение - ему приходиться переоценивать. Плохо не в плане увеличения лишней работы судей, а в плане возможной путаницы.
Думаю, при спорных заданиях, как это, можно разрешить изменение решения не более 1-го раза, но в заданиях, где не возникает вопросов и споров, думаю, не стоит разрешать.