Questions tagged «graph-theory»

对于有关图形的挑战,使用数学结构来建模对象之间的关系。

26
数字总和斐波那契
我们都熟悉斐波那契数列: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765 但是,相反,f(n) = f(n-1) + f(n-2)我们将对前2个条目进行数字求和。 序列应仍以开头0, 1,之后差异会迅速显现。此列表的索引为0,也可以使用索引为1的状态。 f(0) = 0 f(1) = 1 f(2) = 1 # 0 + 1 f(3) = 2 # 1 + 1 f(4) …

30
ASCII三角形
您的任务是编写一个打印ASCII三角形的程序或函数。他们看起来像这样: |\ | \ | \ ---- 您的程序将采用单个数字输入n,并带有约束0 <= n <= 1000。上面的三角形的值为n=3。 ASCII三角形将具有n反斜杠(\)和竖线(|),n+1线和破折号(-),并且每行除最终行外还将具有等于行号(从0开始,即第一行为行0)的空格。 。 例子: 输入: 4 输出: |\ | \ | \ | \ ----- 输入: 0 输出: 在此测试用例中,输出必须为空。没有空格。 输入: 1 输出: |\ -- 输入和输出必须完全是我指定的方式。 这是代码高尔夫球,因此请争取尽可能短的代码!
30 code-golf  ascii-art  code-golf  rubiks-cube  code-golf  path-finding  maze  regular-expression  code-golf  math  rational-numbers  code-golf  kolmogorov-complexity  graphical-output  code-golf  tips  code-golf  string  permutations  code-golf  sorting  base-conversion  binary  code-golf  tips  basic  code-golf  number  number-theory  fibonacci  code-golf  date  code-golf  restricted-source  quine  file-system  code-golf  code-golf  math  code-golf  ascii-art  code-golf  math  primes  code-golf  code-golf  math  matrix  code-golf  string  math  logic  factorial  code-golf  palindrome  code-golf  quine  stateful  code-golf  interactive  code-golf  board-game  code-golf  math  arithmetic  code-golf  string  code-golf  math  matrix  code-golf  math  abstract-algebra  polynomials  code-golf  date  code-golf  string  array-manipulation  sorting  code-golf  game  code-golf  string  code-golf  ascii-art  decision-problem  code-golf  number  sequence  code-golf  code-golf  code-golf  sequence  fibonacci  code-golf  math  geometry  random  code-golf  code-golf  math  decision-problem  fractal  rational-numbers  code-golf  number  number-theory  code-golf  combinatorics  permutations  card-games  code-golf  math  sequence  array-manipulation  fibonacci  code-golf  sequence  decision-problem  graph-theory  code-golf  ascii-art  parsing  lisp  code-golf  string  math  natural-language  logic  code-golf  math  logic  code-golf  string  alphabet  code-golf  string  code-golf  string 

2
帮助吃豆人计算吃点数
在担心自己超重的吃豆人女士的建议下,吃豆人决定跟踪自己每天的吃豆点摄入量。帮助他计算迷宫中给定路径上的点点数! 迷宫 为了帮助您构建自己的迷宫编码,您可以在此处获取一些原始数据。 吃豆人的旅程 在此挑战的背景下,适用以下规则: 首先,好消息是:幽灵不在。 吃豆人总是在上图所示的位置开始比赛,向东方行驶。起始位置没有Pac-Dot。 只要他一直走直线路,他就会一直前进到下一个方块。 当他遇到90°转弯而没有其他可用路径(地图上的橙色正方形)时,他会自动而系统地转弯。 当他遇到路口时多个路径可用(地图上的绿色正方形)时,他可以沿相同的方向继续行驶(如果适用),也可以选择其他方向(包括掉头)。 当吃豆人穿过迷宫左中或右中出口的其中一个出口时,他立即在对面再次出现。 吃豆人会在他遵循的路径上吃掉所有吃豆点。一旦吃了一点点,就将其从迷宫中取出。 挑战 输入值 您将得到一个字符串,描述吃豆人在他将要到达的路口的行为。此字符串将由以下字符组成: L:向左旋转90度 R:向右旋转90度 F:前进(方向不变) B:向后走(掉头) 处理完所有字符后,Pac-Man在遇到的下一个路口停下来。 输出量 您必须打印或输出沿输入路径吃掉的点点数。 规则 您可以编写完整的程序或函数。 您可以输入大写或小写形式的字符串或字符数组。您也可以在中使用其他字符(每个方向只能使用一个字符)或整数[0 .. 9]。如果这样做,请在答案中明确指出。 您可以假定输入始终有效。(下面的jsFiddle将检测到错误,但您不应这样做。) 这是代码高尔夫球,因此以字节为单位的最短代码获胜。 禁止出现标准漏洞。 暗示 存储迷宫的确切形状可能不是必需的,也不是最佳的。 测试案例和演示 可以在此jsFiddle中测试以下测试用例(或任何其他输入)。 1. Input : "" Output : 1 Comment: Pac-Man just advances to the first junction, eats …

28
计算超级对数
这应该是一个简单的挑战。 给定一个数字n >= 0,输出的超级对数(或log *,log-star或迭代对数,它们是等效的,因为n对于该挑战永远不会为负。)n。 这是四官能的两个反函数之一。另一个是超级根,这是一个相关的问题。 例子 Input Output 0 0 1 0 2 1 3 2 4 2 ... 15 2 16 3 ... 3814279 3 3814280 4 规则 您可能不需要支持小数。 您需要至少支持输入3814280 = ceiling(e^e^e)。 您可能不对值进行硬编码3814280。(理论上,您的程序必须支持更高的数字。)我希望实现一种算法。 最短的代码胜出。 相关OEIS
29 code-golf  math  code-golf  array-manipulation  sorting  code-golf  math  arithmetic  matrix  code-golf  string  kolmogorov-complexity  code-golf  string  code-golf  math  sequence  arithmetic  recursion  code-golf  math  ascii-art  sequence  code-golf  math  array-manipulation  code-golf  code-golf  kolmogorov-complexity  code-golf  string  code-golf  string  decision-problem  code-golf  array-manipulation  tips  javascript  json  code-golf  math  string  number  number-theory  code-golf  math  sequence  fibonacci  number  arithmetic  fastest-code  integer  code-golf  math  sequence  code-golf  string  file-system  tips  golfscript  code-golf  string  code-golf  string  natural-language  code-golf  string  file-system  code-golf  math  array-manipulation  code-challenge  image-processing  compression  code-golf  math  number  sequence  code-golf  math  combinatorics  regular-expression  code-golf  sequence  pi  code-golf  ascii-art  code-golf  string  array-manipulation  sorting  code-golf  string  graph-theory  code-golf  string  code-golf  string  ascii-art  code-challenge  compression  code-golf  code-golf  math  sequence  number-theory  code-golf  maze  graph-theory  code-golf  math  sequence 

1
我的图面是平面吗?
您的任务是确定图形是否为平面。 如果图形可以嵌入到平面中,则该图形是平面的;换句话说,如果可以绘制该图形而没有任何交叉边缘。 输入:您将获得以下格式的无向图: 边缘列表,例如 [(0, 1), (0, 2), (0, 3)] 邻接图,例如 {0: [1, 2, 3], 1:[0], 2:[0], 3:[0]} 相邻矩阵,例如 [[0, 1, 1, 1], [1, 0, 0, 0], [1, 0, 0, 0], [1, 0, 0, 0]] 节点名称可以是数字,字符串或类似名称,但是您选择的格式必须能够支持任意图形。节点名称中没有放置代码。不会有自我循环。 输入的标准选择,包括STDIN,命令行参数和函数参数。 输出:您应该为所有平面图返回一个特定的输出,并为所有非平面图返回一个不同的特定输出。 输出的标准选择,包括STDOUT,函数返回值。 例子: 平面: [] [(0,1), (0,2), (0,3), (0,4), (0,5), (0,6)] [(0,1), (0,2), …

8
您在最大的房间吗?
介绍 您最近接受了Pretty Good Software Company的工作机会。您对办公室的大小很满意,但是您有吗最大的办公室?当您停下脚步时,仅盯着同事的办公室很难说清楚。解决这个问题的唯一方法是检查建筑物的蓝图。 你的任务 编写一个程序,脚本或功能,以制定建筑物的平面图并指出您的办公室是否最大。平面图很容易阅读,因为建筑物是n by n正方形。 输入将包含n + 1个 \n定界线。第一行的数字为n。接下来的n行将是建筑物的平面图。一个简单的示例输入: 6 ...... . . . .X . . . . . . . . ...... 平面图的规则如下: .(ASCII 46)将用于表示墙壁。(空格[ASCII 32])将用于表示开放空间。 您用X(ASCII 88)表示。你在办公室 平面图将是n行,每行包含n个字符。 建筑物四周四面都是墙。这意味着输入的第二行(平面布置图的第一行)和输入的最后一行均为.s。这也意味着每条平面图行的第一个和最后一个字符将是.s。 办公室的大小定义为相邻空间的总和(通过在四个方向(N,S,E,W上移动而无需穿过墙壁而连续))。 为了办公室的大小,代表您的X计为(开放空间) 4 <= n <= 80 您应该输出您的办公室是否严格大于其他所有办公室。输出可以是在您选择的编程语言中明确表示True或False并遵循零,null和空表示False的标准约定的任何内容。真实意味着您的办公室绝对是最大的。 以上输入的样本输出: 1 因为您的办公室是8平方英尺,而另一个办公室是4平方英尺。 I / O准则 …

6
救命!我的计算器出现故障!
介绍 我的计算器很奇怪。有时,当我输入时8会显示2。有时,当我输入a 6时会显示+。一些按钮混在一起! 谁能帮我确定哪个? 挑战: 输入:错误方程式列表,结果正确。 输出:交换的两个按钮。 例如: 输入可以是: 123 = 3 8423 = 252 4+4 = 8 4*7-10 = 417 9/3 = 3 42-9 = -36 其预期的输出是:2和*。 为什么?因为如果我们交换2和*,则所有等式都是正确的: 1*3 = 3 84*3 = 252 4+4 = 8 427-10 = 417 9/3 = 3 4*-9 = -36 挑战规则: 输入可以采用任何合理的格式。可以是一个以空格分隔的字符串;字符串列表或-array; 一个包含方程式的列表和另一个包含正确结果的列表。你的来电。请说明您使用的输入格式! …
28 code-golf  number  arithmetic  integer  code-golf  math  number  geometry  code-golf  grid  code-golf  math  number  sequence  primes  code-golf  sequence  kolmogorov-complexity  code-golf  string  ascii-art  alphabet  code-golf  math  sequence  integer  code-golf  number-theory  integer  natural-language  code-golf  date  code-golf  function  code-golf  ascii-art  code-golf  math  number-theory  primes  classification  code-golf  array-manipulation  decision-problem  matrix  code-golf  number  code-golf  code-golf  ascii-art  matrix  code-golf  string  code-golf  sequence  base-conversion  code-golf  code-golf  math  number-theory  combinatorics  integer-partitions  code-golf  integer  binary  base-conversion  code-golf  integer  base-conversion  palindrome  code-golf  code-golf  integer-partitions  code-golf  math  ascii-art  matrix  code-golf  number  sequence  number-theory  matrix  code-golf  interpreter  code-golf  graph-theory  code-golf  ascii-art  decision-problem  code-golf  division  code-golf  array-manipulation  primes  code-golf  string  ascii-art  code-golf  primes  counting  code-golf  matrix  unicode  code-golf  source-layout  code-golf  grammars  code-golf  string  cops-and-robbers  regular-expression  obfuscation  string  code-challenge  cops-and-robbers  regular-expression  code-golf  kolmogorov-complexity  game  card-games  code-golf  kolmogorov-complexity  code-golf  array-manipulation  matrix  code-challenge  cops-and-robbers  code-challenge  decision-problem  cops-and-robbers  code-golf  permutations 

8
激流独木舟
您正在划一条独木舟在一条相当快的激流河上。突然,您的船桨爆炸了,您发现自己处在危险的境地,没有任何船桨,使河流急速驶下。幸运的是,您仍然具有编程技能,因此您决定在独木舟旁边雕刻一个程序,以帮助您在急流中生存。但是,独木舟侧面没有太多的表面可用来编写程序,因此您必须使程序尽可能短。 河流可以表示为8 x 16的网格。我们将在列上标记数字0为7,在行上标记数字0为15。 y --------15 --------14 --------13 --------12 --------11 --------10 --------9 --------8 --------7 --------6 --------5 --------4 --------3 --------2 --------1 --------0 01234567 x 上图:一条完全平静,普通的河流,没有障碍物。自然,这不是您要走的河。 您从坐标(4,0)开始,然后从那里不受控制地向河上移动(即向量 (0,1)),直到撞到一块岩石(o在这些示例中以表示)。当您撞到一块岩石时,您将有55%的机会越过岩石的左侧(即vector (-1,1)),而有45%的机会就越过岩石的右侧(即vector (1,1))。如果独木舟位于最左边或最右边的列上,它将始终向中心移动。如果没有岩石,它将直接向上移动。 y ----x---15 ----xo--14 -o--x---13 ----x---12 ---ox---11 ---x----10 ---xo---9 ---ox---8 ----xo--7 -----x--6 ----ox--5 -o--x---4 ----x---3 ----xo--2 ----x---1 ----x---0 01234567 上图:用字符表示的独木舟可能走的路线 x 给定河流的地图,编写一个程序,将输出在给定列上划独木舟的可能性。 以适合您程序的任何一种方法接受输入(例如STDIN,命令行参数, …

2
2D迷宫减1D
这个挑战是关于将2D迷宫转换为1D迷宫。 总览 +-+-+-+-+-+-+ +-+-+-+-+-+-+ graph { | | | | |A| | B| A B A -- D + + + + +-+-+ + + + + +-+-+ \ | C -- D | | | | | | | | \ | D -- E +-+-+ +-+-+ + +-+-+ …

8
管上某处……但在哪条线上?
在伦敦地铁又名地铁是世界上最古老的地下铁路,它目前由11行(因为“Edgware路”和“哈默”各占据两个位置严格269 **站)* 267个服务站命名 挑战 输出以名称为输入的服务站的线路名称。 输入: 字符串或字符列表 可以假定这是一个有效的站名(如下面的代码块中所列)。 您可以假设&输入中的任何内容将始终是单词and(或And),如果您愿意,只需在答案中清楚说明即可。 输出: 单独的输出列出了服务该站的十一条线路的输出: 字符串列表,字符列表,打印文本,字符串,字符列表;如果有疑问请问。 如果愿意,您可以始终输出单词and(或And)代替任何单词&,只需在答案中清楚说明。 需要注意的是,如果打印或返回一个字符串或字符列表,则在任何行名(包括the &或andor Andused)中都不存在使用的分隔符-子字符串-因此,这排除了使用单个空格字符作为分隔符。 试管网络: -注意:这是最终状态,即使它碰巧包含拼写错误(除非在回答前得到解决) Input (Station Name) : Output (list of tube line names) ---------------------------------------------------------------------------------------------------------------- "Acton Town" : ["District","Piccadilly"] "Aldgate" : ["Circle","Metropolitan"] "Aldgate East" : ["District","Hammersmith & City"] "Alperton" : ["Piccadilly"] "Amersham" : ["Metropolitan"] "Angel" : …

3
安排泡泡
注意,挑战是从math.stackexchange询问的问题复制而来的。 最近,我掌握了一些吹泡泡的技巧。首先,我会像这样吹泡泡: 但是事情开始变得奇怪了: 一段时间后,我吹了一些怪异的气泡: 吹完数百个甚至数千个这样的气泡后,我的额头突然出现问题:给定n个气泡,您可以用几种不同的方式排列它们?例如,如果n = 1,则只有1种排列。如果n = 2,则有2种排列。如果n = 3,则有4种排列。如果n = 4,则有9种排列。 这是4个气泡的9个排列: 在吹完所有这些奇妙的泡泡之后,我决定与您分享点算他们的安排的乐趣。因此,这是您的任务: 目标 编写一个程序,函数或类似的程序,计算可以排列n气泡的方式。 输入项 n,气泡数。n> 0 输出量 排列这些气泡的方式的数量。 获奖标准 如果我们能在您的代码周围吹泡泡,那真的很酷。您编写的代码越小,执行起来就越容易。因此,使用最少字节数编写代码的人将赢得比赛。 额外的信息 信息系统

4
打我一个OOP!
打我一个OOP! 面向对象编程的两个重要组成部分是继承和组合。它们一起允许创建简单而强大的类层次结构来解决问题。您的任务是解析有关类层次结构的一系列语句,并回答有关层次结构的问题。 输入项 从文件或标准输入中读取关于类层次结构的一系列语句和问题,以最适合您的语言的情况为准。如果使用file选项,文件名将作为第一个参数传递给代码(函数参数或命令行参数,无论您选择哪个)。格式如下: <statement> : <name> is a <name>. | <name> has a <name>. <question> : Is <name> a <name>? | Does <name> have a <name>? <name> : a-z | A-Z | sequence of alphanumerics or underscores, starting with a letter 输入将始终是语句,然后是问题。所有班级名称A-Z均以大写英文字母()开头,所有成员名称均以小写英文字母(a-z)开头。所有名称均区分大小写- ABC123与的类不同Abc123。 不会有任何周期性继承-如果B继承自A,A不会继承B或任何B的子代。 只有类名将成为层次结构的一部分-诸如foo is a bar.或document has …

27
一个月中有几天?
给定一个月的文本表示形式(不区分大小写的全名或3个字符的缩写),请返回该月的天数。 例如,december,DEC,和dec都应该返回31。 2月可以有28天或29天。 假设输入的是正确格式之一的月份。

10
骑士距离
在国际象棋中,网格(x,y)上的骑士可能会移动到(x-2,y-1),(x-2,y + 1),(x-1,y-2),(x-1, y + 2),(x + 1,y-2),(x + 1,y + 2),(x + 2,y-1),(x + 2,y + 1)。想象一个无限的棋盘,只有一个骑士在(0,0)上: 将骑士从(0,0)移到(t x,t y)需要多少步骤? 输入项 两个整数:t x,t y; -100 <t x <100,-100 <t y <100 输出量 将骑士从(0,0)移至(t x,t y)所需的最小步伐。 规则 高尔夫代码 测试用例 x y -> out 0, 0 -> 0 0, 1 -> …

3
实施简化字距调整
介绍 字距调整是指调整文本字母之间的间距。例如,考虑Top用以下三个字形写的单词: ##### ..... ..... ..#.. ..... ..... ..#.. ..##. .###. ..#.. .#..# .#..# ..#.. .#..# .#..# ..#.. ..##. .###. ..... ..... .#... ..... ..... .#... 我们可以用点填充字形之间的间隙并完成它,但是间隙看起来太宽了。相反,我们将字形滑动到左侧,以便它们几乎可以接触: #####........ ..#.......... ..#..##..###. ..#.#..#.#..# ..#.#..#.#..# ..#..##..###. .........#... .........#... 看起来好多了!请注意,的条形图T在的左边框上方o。在此挑战中,您的任务是为此类矩形字形实现一个简单的字距调整程序。 字距调整过程 考虑具有.和#形状相同的两个矩形2D字符数组。在简单的字距调整过程中,我们首先将数组并排放置,中间放置一列.s。然后,我们将#右阵列中的每一个向左移动一步,直到#左右阵列中的s正交或对角相邻。字距调整的结果是引入相邻s 之前的步骤#。您的任务是实施此过程。 让我们举个例子: Inputs: ..### #.... #.... ..##. ...#. ...## ..### ....# Process: …
24 code-golf  grid  code-challenge  atomic-code-golf  code-golf  combinatorics  probability-theory  card-games  code-golf  number  geometry  code-golf  decision-problem  chess  code-golf  math  number  sequence  code-golf  string  regular-expression  code-golf  arithmetic  integer  code-golf  math  array-manipulation  code-golf  number  decision-problem  integer  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  decision-problem  graph-theory  binary-matrix  code-golf  string  parsing  code-golf  string  code-golf  morse  code-golf  code-golf  string  code-golf  ascii-art  cellular-automata  code-golf  binary  base-conversion  code-golf  arithmetic  decision-problem  integer  checksum  code-golf  matrix  linear-algebra  code-golf  code-golf  game  code-golf  sequence  binary  code-golf  combinatorics  optimization  code-golf  decision-problem  quine  code-golf  rational-numbers  bitwise  code-golf  string  permutations  code-golf  kolmogorov-complexity  unicode  code-golf  ascii-art  number  code-golf  number  integer  binary  base-conversion  code-golf  array-manipulation  code-golf  chemistry  code-golf  number  sequence  fibonacci  code-golf  matrix  optimization  code-golf  number  code-golf  math  number  sequence  code-golf  math  array-manipulation  matrix  linear-algebra  code-golf  kolmogorov-complexity  cops-and-robbers  cops-and-robbers  code-golf  tips  basic  code-golf  decision-problem  binary  tiling  game  king-of-the-hill  python  code-golf  c  code-golf  ascii-art  code-golf  string  kolmogorov-complexity  alphabet  code-golf  number  code-golf  string  code-golf  number  sequence  integer  code-golf  number  permutations  restricted-complexity  restricted-time 

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.