Questions tagged «typography»

与等宽纯文本的排列,布局或格式相关的挑战。

28
计算Phi(非Pi)
不,我不是说ϕ = 1.618...和π = 3.14159...。我的意思是功能。 φ(x)的是一个整数小于或等于的数量x互质到x。 π(x)是小于或等于的素数x。 假设“非pi”为π̅(x),并将其定义为小于或等于的复合数x。 任务 给定一个严格的正整数x,计算φ(π̅(x))。得分以字节为单位。 例子 每行包括输入(从1到100,包括1和100),以及由空格分隔的相应输出。 1 0 2 0 3 0 4 1 5 1 6 1 7 1 8 2 9 2 10 4 11 4 12 2 13 2 14 6 15 4 16 6 17 6 18 4 19 4 …
73 code-golf  sequence  primes  number-theory  code-golf  decision-problem  code-golf  date  code-golf  typography  code-golf  math  number  multiple-holes  code-golf  quine  code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

7
避江
背景 在排版中,河流是一块文本中的视觉间隙,这是由于空间的同时对齐而发生的。这些特别令人讨厌,因为您的大脑似乎在周围视力中更容易拾取它们,从而不断分散您的视线。 例如,以下面的文本块为例,这些行的折断使得行宽不超过82个字符: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eismod tempor incididunt ut labore et dolore maga aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum …

24
将文本居中!
将文本居中! 在此挑战中,您将以各种线条为中心。 例子 Foo barbaz Foo barbaz Hello World Hello World Programming Puzzles & Code Golf Programming Puzzles & Code Golf 技术指标 每个输入行将始终至少包含一个非空白字符,您可以假设唯一的空白字符是空格()和换行符。每个输入行都没有尾随和/或前导空格(换行符除外)。尾随在输出空白是不是允许。 您应该在输入中最长的线中间居中。如果该行的长度相等,则您的程序/功能应偏向左侧居中。最大行长是您的语言可以处理的,但您的程序应在至少500条长度的行上运行。 排行榜 这是一个堆栈片段,用于按语言生成常规排行榜和获胜者概述。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 # Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: # Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: # Perl, 43 + 2 (-p flag) = 45 bytes …

30
牛肝菌
相关但非常不同。 一个牛耕式转行书写法就是写作的所有其他行翻转或反转,并反转字母文本。 在此挑战中,我们将每隔一行反转一次,而使实际使用的字符保持不变。您可以选择要反转的行,只要它们彼此间隔即可。 只要您支持零行或更多行的可打印ASCII行(每行包含零个或多个字符),就可以采用任何合适的格式的文本。 例子: ["Here are some lines","of text for you","to make a","boustrophedon"]: ["Here are some lines","uoy rof txet fo","to make a","nodehportsuob"] or ["senil emos era ereH","of text for you","a ekam ot","boustrophedon"] ["My boustrophedon"]: ["My boustrophedon"] or ["nodehportsuob yM"] []: [] ["Some text","","More text","","","Last bit of text"]: ["Some text","","More …

9
线之间
前几天在方形纸上乱涂乱画时,我想到了上面的负数数字字体。如果尚未发现,上述形状之间的间隔会产生黄金分割率1.618033988749。在此挑战中,您的任务是将数字作为输入并完全按照上面的示例所示呈现它。 这些是如何创建的。所有行将位于规则的网格上,因此各个数字由少量的网格单元组成。这是10位数字的形状(此挑战我们将忽略小数点): 是的,这7与顶部的黄金分割率示例不同。我有点搞砸了。我们将继续进行。 请注意每个数字是五个单元格高,三个单元格宽。要渲染数字,您可以想象将其所有数字彼此相邻放置,以使每对数字之间恰好有一个空列。例如,以319输入为例: 注意,我们添加了一个前导和尾随的空列。现在我们反转单元格: 然后,输出应为所得多边形的边界: 当然,您可以通过任何其他方式生成结果,只要呈现的输出看起来相同即可。 输入值 您可以编写程序或函数,将通过STDIN(或最接近的替代方案)的输入,命令行参数或函数参数作为字符串或数字列表。(您不能输入数字,因为那将不允许您支持前导零。) 您可以假设输入中将不再有16位数字。 输出量 输出可以显示在屏幕上或以通用图像格式写入文件。 您可以同时使用光栅图形和矢量图形。 在任何一种情况下,基础网格的单元的纵横比都必须为1(即,单元应为正方形)。 对于光栅图形,每个像元应至少覆盖20 x 20像素。 这些线的宽度不得超过像元大小的10%。由于这里的别名,我愿意留出一两个像素的余地。 线条和背景可以是任何两种可以明显区分的颜色,但是线条所形成的形状一定不能填充(也就是说,内部也应该是背景颜色)。 每个闭环内不得有间隙。 当然,整个结果必须可见。 测试用例 这是10个输入,它们一起涵盖所有可能的相邻数字对,以及每个可能的前导和尾随数字: 07299361548 19887620534 21456837709 39284106657 49085527316 59178604432 69471338025 79581224630 89674235011 97518264003 这是这些的预期结果: 确保您的代码在给出一个数字时也可以工作(我不想在这里包括预期的结果,因为它们应该很明显,并且测试用例部分已经足够膨胀了)。

6
完全对齐并连字符
Given a width and a block of text containing possible hyphen- ation points, format it fully- justified (in monospace). 有充分理由意味着它是在左对齐和右,和通过增加字间距直到每一行配合来实现的。 有关: 通过添加空格来对齐文本 将文本对齐块 从某种意义上说,这可以被认为是“ 文本处理#1:断字”(似乎从未发布过)的下一步。 输入项 您可以采用任何喜欢的格式输入。您将获得: 目标宽度(以字符为单位),范围为5-100(含); 包含可能带有连字符的单词的文本块。这可以是用空格分隔的字符串,单词数组或单词片段数组的数组(或所需的任何其他数据表示形式)。 典型的输入可能是: Width: 25 Text: There's no bu-si-ne-ss lik-e s-h-o-w busine-ss, n-o bus-iness I know. 连字符表示可能的连字符点,空格表示单词边界。文本的可能替代表示形式: [["There's"], ["no"], ["bu", "si", "ne", "ss"], …

9
打印所有3 x 3坚固的正方形
坚固的正方形(类似于魔术正方形)是整数1到N 2在N by N网格上的排列,以使每2 by 2子网格具有相同的总和。 例如,对于N = 3,一个坚固的正方形是 1 5 3 9 8 7 4 2 6 因为四个2 x 2子网格 1 5 9 8 5 3 8 7 9 8 4 2 8 7 2 6 全部加起来等于23, 23 = 1 + 5 + 9 + 8 = 5 + …
24 code-golf  number  arithmetic  number-theory  grid  code-golf  binary  code-golf  popularity-contest  code-golf  chemistry  code-golf  code-golf  date  code-golf  quine  chess  code-golf  hexadecimal  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  math  date  code-golf  typography  code-golf  string  code-golf  string  code-golf  code-golf  math  arithmetic  array-manipulation  grid  code-golf  puzzle-solver  code-golf  music  audio  code-golf  decision-problem  code-golf  geometry  code-golf  number  bitwise  code-golf  string  metagolf  hexagonal-grid  code-golf  string  code-golf  sorting  popularity-contest  code-golf  game  sequence  base-conversion  binary  code-golf  decision-problem  graph-theory  natural-language  code-golf  math  parsing  optimized-output  code-golf  array-manipulation  code-golf  graphical-output  image-processing  tiling  code-golf  graph-theory  path-finding  chess  code-golf  code-golf  balanced-string  code-golf  number  code-golf  sequence  code-golf  math  arithmetic  statistics  code-golf  chemistry 

9
从字面上看CR和LF
为了庆祝好旧的记事本,我们将把回车符和换行符视为它们的原始含义,而不是它们今天所使用的含义。 鉴于由可打印的ASCII加换行符的字符串(␊; LF; ESC \n;十六进制0A; 12月10日)和回车(␍; CR; ESC \r;十六进制0D; 12月13日),因在线试用说明如何使用可打印字符如果在使用字面意义上的那两个控制字符的打印机上进行打印,将被定位: 换行后,继续向下打印一行 回车后,继续从左侧打印 多个连续的回车符的行为类似于单个回车符 由于现代设备存在过行程问题,除非输入至少在输入之前和/或之后,否则不会发生一次或多次回车,除非在输入开始时。但是,两次回车可以通过换行分隔。 只要至少保留输入中给定的空白量,无论在任何行的右侧还是在整个文本下方,任何数量的附加尾随空白都是可以接受的。 示例(将\n和\r用于换行和回车) Lorem ipsum dolor sit amet, Lorem ipsum dolor sit amet, consectetur adipiscing\nelit, sed consectetur adipiscing elit, sed do eiusmod\r\ntempor incididunt\n\n ut labore do eiusmod tempor incididunt ut labore et dolore\n\rmagna \r\r\naliqua. Ut (注意尾随空格) et …

2
格式化首付资金
介绍 编写为段落添加首字母大写的程序或函数。该程序将输入要设置格式的文本,列宽以及要删除大写字母的行数。首字母大写如下: Lines: 2 3 4 Drop capital: A| A.| A..| ~' ..| ...| etc. ~~' ...| ~~~' 这是与排版有关的挑战。 输入项 输入一串可打印的ASCII字符(没有制表符或换行符),以及两个大于1的整数。 一个整数是输出应具有的列数。 另一个是下降资本跨越的行数。 文本字符串包含用单个空格分隔的单词。 假设所有单词都不超过列宽。 那是,column width > longest word + drop capital height 所有行将至少包含一个单词。 对于此挑战,单词由空格以外的任何其他字符组成。 输入可以按照上述规则以任何方便的格式进行。 输出量 左对齐的文本块,包含带有指定行数的首字母大写。 一行应包含尽可能多的单词,且长度不超过列宽。 在首字母大写和每一行的其余部分之间都有一个空格。 允许一个尾随空格或换行符。 例子 Lines: 2 Columns: 10 Text: The quick …

6
反向Boustrophedon文字
Boustrophedon是一种双向文本,其中连续的行在从左到右和从右到左的阅读之间交替。字符方向也相对于读取方向是镜像的。在反向牛头文字书写系统中,字符被旋转180,而不是镜像。 挑战 编写一个程序/函数,该程序/函数接受文本字符串和许多列,然后将格式设置为指定数目的列的字符串输出,并将其交替上下翻转。 输入项 您的程序应接受两个参数: S,要格式化的文本字符串 N,列数 输出量 您的程序应输出N列包裹的S,并交替翻转180度。 第一行的读取方向始终是从左到右。 不必担心在何处放置换行符,可以在任何字符处分割行,而无需添加单词。 您可能会假设输入字符串将不包含任何换行符。 以下是程序在翻转时应支持的字符: Uppercase: ABCDEFGHIJKLMNOPQRSTUVWXYZ ∀qƆpƎℲפHIſʞ˥WNOԀQɹS┴∩ΛMX⅄Z Lowercase: abcdefghijklmnopqrstuvwxyz ɐqɔpǝɟƃɥᴉɾʞlɯuodbɹsʇnʌʍxʎz Punctuation: &_?!"'., ⅋‾¿¡„,˙' 测试用例 S: The quick brown fox jumps over the lazy dog. N: 30 Output: The quick brown fox jumps over ˙ƃop ʎzɐl ǝɥʇ S: Lorem ipsum dolor sit …

3
删除连字符
是时候进行新的排版挑战了!在各种文档格式之间复制粘贴时,这是一个常见的问题:连字。虽然它可以减少左对齐布局的参差不齐或在合理的布局中使间距均匀,但如果PDF的构造不正确并且在布局中保留了连字符,这将是您的全部烦恼,从而使复制的文本难以编辑或重排。 幸运的是,如果我们相信那里有无数的自助书,那么,如果您将其视为挑战,那就没有问题了。我相信这些自助书无一例外都涉及PPCG,如果提出挑战,任何问题都将得到解决。您的任务是从文本中删除有害的连字符和换行符,以便可以将其粘贴到任何文本编辑器中。 问题描述 您将编写一个程序或函数来删除连字符和换行符(如果适用)。的输入将是一个字符串stdin(或最接近的替代),或者作为函数的输入。在输出(在stdout或接近的替代的或功能输出)将是“校正”文本。此文本应可直接复制粘贴。这意味着前导或尾随输出都可以,但是在更正文本中间的其他输出(例如,每行的前导空格)则不行。 最基本的情况如下(注意:没有尾随空格) Lorem ipsum dolor sit amet, con- sectetur adipiscing elit. Morbi lacinia nisi sed mauris rhoncus. 应删除有问题的连字符和换行符,以获取 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi lacinia nisi sed mauris rhoncus. 但是,应注意一些例外情况。 双换行符表示段落分隔符,应保留。 专有名词和名称永远不会跨越两行,除非它们已经包含连字符(例如Navier-Stokes方程)。应删除换行符,但保留连字符。这些情况可以通过仅将首字母大写来识别。 有时,连字符表示一个单词组(例如19世纪和20世纪)。如果这发生在两行之间,则在下一行以前导空格表示。 一个示例:(此示例中表达的观点是虚构的,不一定代表作者的观点;同样欢迎Runge-Kutta-Fehlberg方法的反对者参加此挑战) Differential equations can be solved with the Runge-Kutta- Fehlberg method. …

12
所有人都说……
目标给定不包含字符[或的文本输入],请执行以下操作: 对于Amen具有至少一个大写字母的每个实例(因此,所有Amen不包含的实例amen),都输出相同的名称Amen(保留大写)。 对于/all the people said[?: ]/i(这是一个正则表达式)的每个实例,还输出Amen(任何情况都可以)。 在每个输出之后,您可以选择任何常量分隔符,例如换行符,空格或什么都不做。 这是一个代码高尔夫球,因此以字节为单位的最短程序获胜。 IO范例 Input: I said AMEN! AMEN, PEOPLE! Output: AMENAMEN ; any separator is fine, I choose none. Input: amen amen amen amen Output: ; nothing Input: ; empty Output: ; nothing Input: *blah blah blah* And all the people said? Output: …

7
正反感叹号和问号对
挑战 ¡我们将给感叹和问号倒置的伙伴! 由于包含文本的句子结束于一体.,?或者!,前置倒问号,¿以疑问句(句子结尾?)和反向的感叹号,¡以感叹句(截至句子!)。结尾的句子.将被忽略。 句子将由空格(空格,制表符和/或换行符)分隔,并且仅包含字母数字,逗号,撇号和空格。每个句子至少要有一个单词。确保每个句子的第一个单词都大写。输入可以以任何空格开头和结尾。 例 输入: Hello there! What is your name? My name is Ron. What's your name? My name is Alex. Nice to meet you! Nice to meet you to! How was your break? It was great, I spent all my time code golfing! What's that? Wow, you're …


1
一个最出色的证明,对于fi来说太小了!
您坐在家里,以最邪恶的方式揉手。这次,我将能够设置社区A-SPIN!我只是声称我已经在这里的本书中证明了这个问题(毫无疑问是可以改进的)……您打开第一个相关页面。你擦那些字... 您当然是邪恶的费马!哈哈,开玩笑。您知道这种情况并非如此。这只是他邪恶的孪生兄弟格式的叙述。这里的格式太懒了,无法将他的“证明”浓缩到边缘。因此,他呼吁你为他做。 目标在给定证明(字符串)和页面(文本块)的情况下,将证明“写”到空白处。 有效的页面规则 当且仅当满足以下要求时,文本块才包含页面: 顶部和底部边框的形式为-{10,}\+$(正则表达式-至少十次,直到a +,然后是行的结尾)。 每条非顶部和底部的行都必须以结尾|。至少会有这样一条线。 |每行的最后一行至少要有五个空格。 所有线条的宽度相同。 因此,以下是有效页面(.s用于显示最大边距边界在哪里): -----------------+ Lorem Ipsum. | and other . | latin crud . | . | EOF. | -----------------+ 这是另一页边距更大的页面: ------------------------+ Hello world! . | How are you, to. | day? --Mme. B . | . | ------------------------+ 您将在给定的字符串的空白处写入内容,并尽可能地保留单词。例如,如果hello适合下一行,请不要在当前行上断开它。 输入/输出 填充文字 …

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.