Questions tagged «matrix»

矩阵是排列在具有行和列的矩形中的数字列表。在编程中,它也称为2D数组。如果您面临的挑战是处理矩阵,请使用此标签。

9
马尔可夫过程的收敛
挑战 给定一个左或右随机矩阵,其中x的极限接近矩阵的无穷大,x的幂接近具有所有有限值的矩阵,则返回矩阵收敛到的矩阵。基本上,您想保持矩阵自身相乘,直到结果不再改变为止。 测试用例 [[7/10, 4/10], [3/10, 6/10]] -> [[4/7, 4/7], [3/7, 3/7]] [[2/5, 4/5], [3/5, 1/5]] -> [[4/7, 4/7], [3/7, 3/7]] [[1/2, 1/2], [1/2, 1/2]] -> [[1/2, 1/2], [1/2, 1/2]] [[1/3, 2/3], [2/3, 1/3]] -> [[1/2, 1/2], [1/2, 1/2]] [[1/10, 2/10, 3/10], [4/10, 5/10, 6/10], [5/10, 3/10, 1/10]] -> [[27/130, …
10 code-golf  matrix 

3
Unicode矩形
给定 a来自的字符矩阵u=" ╶╺╵└┕╹┖┗╴─╼┘┴┶┚┸┺╸╾━┙┵┷┛┹┻╷┌┍│├┝╿┞┡┐┬┮┤┼┾┦╀╄┑┭┯┥┽┿┩╃╇╻┎┏╽┟┢┃┠┣┒┰┲┧╁╆┨╂╊┓┱┳┪╅╈┫╉╋" 子矩阵作为坐标x,y,w,h(左,上,宽度> 1,高度> 1) 厚度t为1(如┌)或2(如┏) 考虑到现有线,以指定的粗细渲染子矩阵的内部边界。 x=4;y=1;w=2;h=3;t=2; a=[' ┌───┐', '┌┼┐ │', '│└┼──┘', '└─┘ '] // output r=[' ┌───┐', '┌┼┐ ┏┪', '│└┼─╂┨', '└─┘ ┗┛'] 覆盖线段时,新的厚度应大于旧的厚度和t。 这不是关于输入解析或找到统一的柯尔莫哥洛夫复杂性,所以你可以假设a,u,x,y,w,h,t是提供给您的变量。另外,您可以将结果放入变量中,r而不是返回或输出它,只要它r的类型与相同即可a。 如果您的语言强迫您将代码放入函数(C,Java,Haskell等)中,并且您的解决方案由单个函数组成,则可以省略函数的页眉和页脚。 更大的测试: x=4;y=1;w=24;h=4;t=1; a=['┏┱─────┐ ┌┐ ┎──┲━┓', '┠╂─────┘ ││ ┃ ┗━┛', '┃┃ ││ ┃ ', '┠╂──┲━━┓ ┏━━━━┓ ││ ┌╂┰┐ ', '┃┃ ┗━━┩ ┃ ┃ …

4
生活与疲劳的游戏
Stewie的《生命与疲劳游戏》与更著名的Conway的《生命游戏》非常相似。 Stewie的“生命与疲劳游戏”(GoLF)的宇宙是一个由正方形单元组成的无限二维正交网格,每个网格都处于三种可能的状态之一,即活着,死亡或疲倦。每个单元都与其八个相邻的单元进行交互,这八个单元是水平,垂直或对角线相邻的单元。在每个时间步上,都会发生以下转换: 任何具有少于两个活邻居的活细胞都会死亡,好像是由于人口不足造成的。 任何有两个或三个活邻居的活细胞都可以存活到下一代。 任何具有三个以上活邻居的活细胞都会死亡,就好像人口过多一样。 具有正好三个活邻居的任何死细胞都将变成活细胞,就像通过繁殖一样。 连续存活了两个世代的任何细胞都会死亡,好像是由于疲劳而死亡。直到下一代,它才能重生 输入网格边界之外的任何像元都将消失,就像从悬崖上掉下来一样。 挑战: 您面临的挑战是获取一个代表GoLF初始状态的n×m尺寸的网格和一个整数p,并在p代之后输出游戏的状态。 规则: 输入和输出格式是可选的,但输入/输出网格应具有相同的表示形式 您可以选择任何可打印的符号来表示活细胞和死细胞(我将1用于活细胞和0死细胞)。 您可以选择索引为0还是1。在示例中,p=1是指一步之后的状态。 每种语言中最短的代码获胜 允许用于蜂窝自动化的内置功能 测试用例: 在示例中,我仅在输入中包含输入网格,而不是p。我提供了各种p值的输出。您只能输出与给定输入p一起的网格。 Input: 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 --- Output --- p = 1 …

6
N个碱基中的回文数
给定一个非负整数n >= 0,请永远输出x_i >= 3以完全n不同b的底数为回文数的整数序列,底数可以是2 <= b <= x_i-2。 这基本上是OEIS A126071的反函数,在此输出中该序列中的哪些索引具有值n。有点不同,因为我更改了它,所以您忽略了碱基b = x_i-1, x_i, x_i+1,因为这些碱基的结果始终是相同的(值始终是回文率,或者始终不是)。此外,偏移量也不同。 x_i限制为数字,>= 3因此每个结果的第一项n为A037183。 请注意,输出格式是灵活的,但是应该以很好的方式分隔数字。 例子: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 13 14 22 23 25 29 35 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

4
计算周长密度矩阵
介绍 的周长密度矩阵是一个无限的二进制矩阵中号定义如下。考虑一个(从1开始)的索引(x,y),并用M [x,y]表示由角(1,1)和(x,y)跨越的矩形子矩阵。假定除M x,y之外的所有M [x,y]值(索引(x,y)的值)已经确定。然后,值M x,y是0或1中的任何一个,这会使M [x,y]的平均值更接近1 /(x + y)。如果是平局,请选择Mx,y = 1。 这是子矩阵M [20,20],为清楚起见,用零代替了零: 1 . . . . . . . . . . . . . . . . . . . . . . . . 1 . . . . . . . . . . …
10 code-golf  matrix 

13
对角线点积
这个挑战非常简单。您将得到一个以任何理性方式表示的方阵作为输入,并且您必须输出该矩阵对角线的点积。 具体而言,对角线是从左上角到右下角以及从右上角到左下角的对角线。 测试用例 [[-1, 1], [-2, 1]] -> -3 [[824, -65], [-814, -741]] -> 549614 [[-1, -8, 4], [4, 0, -5], [-3, 5, 2]] -> -10 [[0, -1, 0], [1, 0, 2], [1, 0, 1]] -> 1

2
粉末玩具中打高尔夫球的技巧
玩得开心,“粉玩具”是高尔夫运动中一个有趣的挑战,尤其是在摆球逻辑方面。 使TPT成为挑战的是许多解决问题的方法: Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic? 这样,TPT高尔夫球技巧的位置将非常有帮助,因此我提出了这个问题。 该线程可能会使用很多缩写。其中很多都是游戏中的元素,因此在Wiki上进行搜索会带给您很多有关它们的信息,例如它们的外观。 这是您可能在此主题中看到的最常见的内容,并附有游戏内描述(及其全名),以供不希望搜索的人使用: SPRK:电力。TPT中所有电子设备的基础是沿着电线和其他导电元件传播的。 过滤:过滤。过滤光子,更改颜色。 ARAY:Ray Emitter。光线碰撞时会创建点。 BTRY:电池。产生无限电。 DRAY:复印机射线。复制前面的一行粒子。 CRAY:粒子射线发射器。创建由其ctype设置的粒子束,范围由tmp设置。 SWCH:切换。仅在打开时进行。(PSCN打开,NSCN关闭) 所有元素清单
9 code-golf  tips  the-powder-toy  code-golf  number  array-manipulation  integer  code-golf  string  decision-problem  boggle  code-golf  array-manipulation  average  code-golf  math  code-golf  decision-problem  restricted-source  code-golf  code-golf  math  primes  code-golf  random  code-golf  tips  perl  code-golf  string  parsing  code-golf  math  number  decision-problem  code-golf  math  number  code-golf  string  alphabet  code-golf  math  geometry  code-golf  interpreter  brainfuck  code-golf  code-golf  decision-problem  boggle  code-golf  math  number  sequence  code-golf  math  code-golf  ascii-art  code-challenge  restricted-source  quine  code-golf  math  decision-problem  number-theory  primes  code-golf  ascii-art  code-golf  integer  graph-theory  chess  code-golf  math  interpreter  code-golf  code-golf  code-golf  ascii-art  code-golf  arithmetic  number-theory  code-golf  string  kolmogorov-complexity  code-golf  string  decision-problem  code-golf  primes  factoring  encode  code-golf  decision-problem  code-golf  geometry  grid  code-golf  quine  code-golf  matrix  code-golf  matrix  code-golf  code-golf  number  array-manipulation  code-golf  array-manipulation  sorting  code-golf  matrix  code-golf  brain-flak 

15
最大的广场
这个问题类似于网格中的最大广场。 挑战 给定一个矩阵,该矩阵为,1并且0为字符串格式"xxxx,xxxxx,xxxx,xx.."或数组格式["xxxx","xxxx","xxxx",...],您将创建一个函数,该函数确定包含全部的最大正方形子矩阵的面积1。 正方形子矩阵是宽度和高度相等的子矩阵,您的函数应返回仅包含的最大子矩阵的面积1。 例如: 给定"10100,10111,11111,10010",这看起来像下面的矩阵: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 您可以看到粗体字1创建了最大的2x2的正方形子矩阵,因此您的程序应返回面积为4的子矩阵。 规则 子矩阵必须是宽度和高度相等的子矩阵之一 子矩阵只能包含值 1 您的函数必须返回最大子矩阵的面积 如果找不到子矩阵,请返回 1 您可以通过计算的数量计算子矩阵的区域1在子矩阵 测试用例 输入: "10100,10111,11111,10010" 输出: 4 输入: "0111,1111,1111,1111" 输出: 9 输入 "0111,1101,0111" 输出: 1 这是 代码高尔夫球,因此以字节为单位的最短答案会获胜。

3
编码高尔夫随机正交矩阵
一个正交矩阵是方阵与真正的条目,其列和行是正交的单位向量(即,正交向量)。 这意味着M ^ TM = I,其中I是单位矩阵,^ T表示矩阵转置。 注意,这是正交的而不是“特殊正交”,因此M的行列式可以是1或-1。 挑战的目标不是机器精度,因此如果M ^ TM = I到4个小数位以内就可以了。 任务是编写采用正整数n > 1并输出n×n矩阵的正交正交代码。矩阵应从所有 n×n个正交矩阵中随机且均匀地选择。在这种情况下,“均一”是根据Haar测度定义的,这实际上要求如果乘以任何自由选择的正交矩阵,分布就不会改变。这意味着矩阵的值将是-1到1范围内的浮点值。 输入和输出可以是您认为方便的任何形式。 请显示代码运行的明确示例。 您不能使用任何现有的创建正交矩阵的库函数。这个规则有些微妙,所以我将进一步解释。该规则禁止使用任何现有函数,该函数需要一些(或不输入)输入并输出大小至少为n×n的矩阵,该矩阵必须保证正交。举一个极端的例子,如果您想要n×n单位矩阵,则必须自己创建。 您可以使用任何标准随机数生成器库来选择所需的随机数。 您的代码最多应在几秒钟内完成n < 50。

7
随机填写表格
给定正整数n < 10,创建一个二维矩阵,其中每个位置均以x和填充y(从左上角开始)。 例如: 输入2 00 10 10 11 输入3 00 10 20 01 11 21 02 12 22 创建网格后,随机填充每个索引。可以用“ x”或任何其他方式表示已填充斑点。 您可以通过随机生成索引来填充矩阵来确定要填充的位置。您只能填充n ^ 2次,因此在矩阵完全填充之前,您无法填充任意次数。最后,必须填充矩阵,因此您必须做一些工作以确保检查用于填充的随机数,以确保该点尚未填充。 每次填充后刷新或打印,以显示填充迭代的进度。 填充示例: 输入2 00 10 01 11 00 是随机选择的: XX 10 01 11 01 是随机选择的: XX 10 XX 11 00是随机选择的,但由于已被选择,因此重新滚动选择10: XX XX XX 11 11 是随机选择的: …

6
索引总和并去除我的矩阵
索引总和并去除我的矩阵 给定您喜欢的语言的matrix / 2d数组 输入: 矩阵将始终具有奇数长度 矩阵将永远是完美的正方形 矩阵值可以是您语言中的任何整数(正数或负数) 例: 1 2 3 4 5 6 7 2 3 4 5 6 7 8 3 4 50 6 7 8 9 4 5 6 100 8 9 10 5 6 7 8 -9 10 11 6 7 8 9 10 11 …

10
求矩阵幂
问题 创建一个程序或函数,该程序或函数可以计算加到n 次方的矩阵的结果。您的代码将采用一个任意的方矩阵A和一个非负整数n,并返回一个值为A n的矩阵。 限制条件 不允许使用用于计算矩阵幂和矩阵乘积的内置函数。 适用于代码高尔夫球的其余标准规则。 说明 给定一个方阵A,A n的值= AA⋯A(A与自身的重复矩阵乘积,n倍)。如果n为正,则使用刚才提到的标准。当n为零时,将得出具有相同A阶的单位矩阵。 目标 这是代码高尔夫球,最短的代码获胜。 测试用例 在这里,A是输入矩阵,n是输入整数,r是输出矩阵,其中r = A n。 n = 0 A = 62 72 10 34 r = 1 0 0 1 n = 1 A = 23 61 47 81 11 60 42 9 0 r = 23 …

6
计算两个矩阵的克罗内克总和
在下面的例子中,A和B将是2×2矩阵,和矩阵是一个索引。 一个克罗内克产品具有以下特性: A⊗B = A(1,1)*B A(1,2)*B A(2,1)*B A(2,2)*B = A(1,1)*B(1,1) A(1,1)*B(1,2) A(1,2)*B(1,1) A(1,2)*B(1,2) A(1,1)*B(2,1) A(1,1)*B(2,2) A(1,2)*B(2,1) A(1,2)*B(2,2) A(2,1)*B(1,1) A(2,1)*B(1,2) A(2,2)*B(1,1) A(2,2)*B(1,2) A(2,2)*B(2,1) A(2,2)*B(1,2) A(2,2)*B(2,1) A(2,2)*B(2,2) 一个Kronecker和具有以下特性: A⊕B = A⊗Ib + Ia⊗B Ia和Ib是单位矩阵与的尺寸A和B分别。A并且B是平方矩阵。请注意,A并且B可以具有不同的大小。 A⊕B = A(1,1)+B(1,1) B(1,2) A(1,2) 0 B(2,1) A(1,1)+B(2,2) 0 A(1,2) A(2,1) 0 A(2,2)+B(1,1) B(1,2) 0 A(2,1) B(2,1) A(2,2)+B(2,2) …
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.