Questions tagged «compression»

与压缩或解压缩任意数据有关。与压缩单个特定输入相关的挑战应标记为[kolmogorov-complexity]

2
使用上下文无关文法压缩数据
可以使用直线语法压缩某些类型的数据,例如人工文本或源代码。您基本上可以创建一个语法,该语法的语言中只有一个词-未压缩的数据。在此任务中,您必须编写一个实现此数据压缩方法的程序。 输入项 输入的字符串长度不超过65535字节。确保输入匹配正则表达式[!-~]+(即,至少一个可打印的ASCII字符,不包括空格)。 输入示例 abcabcbcbcabcacacabcabab 输出量 输出是形成规则的一组规则,这些规则描述了一个单词(输入)。每个非终结符均用大于9的十进制数表示。起始符号为符号编号十。下面给出了与示例输入相对应的示例输出;其语法在下面进一步描述: 10=11 11 12 12 11 13 13 11 14 14 11=a 12 12=b c 13=a c 14=a b 每个规则的形式<nonterminal>=<symbol> <symbol> ...在右侧带有任意空格分隔的符号数。每个遵循以下限制并精确导出输入字符串的输出均有效。 限制条件 为了阻止人们做奇怪的事情,我们采取了许多限制措施: 每个非终结符必须在规则的右侧至少出现两次。例如,以下输入语法abcabc不合法,因为规则12仅出现一次: 10=12 11=a b c 12=11 11 两个相邻符号的序列在所有规则的所有右侧都不能出现多次,除非它们重叠。例如,abcabcbc由于顺序bc出现两次,因此以下输入语法无效: 10=11 11 b c 11=a b c 有效的语法为: 10=11 11 12 11=a …

3
有损文本压缩
背景 一个字节可以表示的256个可能的字符中,大多数情况下仅使用其中的几个。我们不能以某种方式利用此优势,并通过消除对很少使用的字母的需要来使我们的文本文件更小? 在大多数情况下,许多字母没有任何价值,可以用更常见的字母代替。例如,在大多数情况下,小写字母“ L”,大写字母“ I”和数字“ 1”看起来几乎相同,因此可以对其进行合并。 几乎不需要大写字母,因此可以省去。解压缩/显示程序甚至可以自动将每个句子的首字母大写,常用名等。 规则 参赛作品的评选依据: 压缩率 解压缩后的可读性 将针对本文的纯文本版本测试条目:http://en.wikipedia.org/wiki/Babbage和随机选择的BBC新闻文章。 额外的分数将被授予;保留任何标记,解压后美化(即大写句子等)。 语言能力 您喜欢的任何对象,但必须在基本的* nix框上轻松编译(或解释)。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.