очевидно тема contest востребована по весне, но не стоит ограничивать её С, пусть уж будут все :) Пусть будет задача требующая либо глубокой теор.подготовки либо опыта копания си-шных недр, а лучше и того и другого. Либо неординарного мышления, итого:
предполагаемая задача:
создать утилиту degrep которая делает вывод следующего за ней grep в тем-же аргументом пустым.
- критерии успеха: `cat $file | degrep $pattern | grep $pattern` всегда пуст вне зависимости от pattern и для любых файлов. pattern соответсвует POSIX и не эквивалентна .*
- критерий сравнения: разница(например xdelta) между `cat $file` и `cat $file | degrep $pattern` минимальна.
- критерий серьёзной заявки - софтинка должна давать лучший результат чем grep -v pattern и sed s/pattern// (то есть лучше тупой инверсии условия/удаление подстрок)
- критерий победы близкой к абсолюту: утилита `undegrep $pattern` восстанавливающая исходный текст файла после degrep. То есть изменения внесённые degrep каким-то образом обратимы.
- требований по скорости не предъявляется - программа должна завершаться за разумное время. Скажем не больше 20 мин на текст не более 10К
- абсолютный абсолют - degrep и undegrep одна и та-же программа. В теории это возможно.
PS. у меня готовых решений нет :( буду на общих условиях
PPS. приветствуются даже подходы к её решению, без приложения кодов :) очень лихая вводная получилась