Questions tagged «game»

此挑战通常基于,与游戏或游戏的某个部分相关,或与其模拟。

2
玩骰子板球游戏
骰子板球是我从小就被介绍的一款游戏,并且自那以后一直用作打发时间的一种方式。我找不到维基百科页面,所以我将在下面解释规则。 骰子板球规则 前提 骰子板球是类似于得分的游戏的游戏板球,你看它,但不是观看和录制的结果,你掷骰子,并记录结果。 结果记录在底部显示的表格中。 显示 骰子板球使用特定的显示屏来显示所有发生的信息。 该表有11行。每行代表一个击球手。该行的布局说明如下。 +------+------------------------------+---------+-----+ | Name | Runs | How Out |Score| +------+------------------------------+---------+-----+ 名称:名称必须是完全由大写或小写字母组成的字符串 运行:击球手可以面对30个球。每个球可以是之一1 2 4 6 . /。这将在下面更详细地说明 表现:击球手的出场方式。可以是任何Bowled, LBW (Leg Before Wicket), Caught, Retired or Not Out 分数:中的所有数字之和 Runs 游戏如何运作 在游戏中,球场上总是有2个击球手。默认情况下,第一个玩家是当前击球手,第二个是“关闭”击球手。 游戏是由“球”组成的:板球比赛中的每个球都由掷骰子表示。每个滚动执行不同的命令: 1,2,4和6使击球手得分高很多。如果将1滚动,则当前面糊将变为“关闭”面糊,而“ off”面糊将变为当前面糊 3是“圆点球”,表示什么也没有发生。它在本Runs节中以a表示.,得分为0。A 0不能用来表示它。 5是检票口。如果掷出5,则当前击球手为“出局”,这意味着a /被添加到奔跑中,此后,击球手将不再得分。然后将面糊与下一个未击打的面糊交换。本How Out节是随机选择的逃生方式:Bowled, LBW, Caught 检票口的示例(为清楚起见,这不是输出方式) …

14
用零填充文件
今天的任务是获取一个现有文件,并将零添加到该文件,直到达到一定大小为止。 您必须编写一个程序或函数,该程序或函数采用当前目录中文件的名称f和字节数b。在保留的原始内容的同时f,您必须在末尾写入零(空字节,而不是ascii 0),以便其新大小为b字节。 您可以假设名称中f仅包含字母数字的ascii,您对此具有完全权限,其初始大小不大于b,但可能与一样大b,并且有无限的可用磁盘空间。 您可能不会假设f它是非空的,或者它不已经包含空字节。 执行结束后,不应修改其他现有文件,也不应该存在新文件。 测试用例 f的内容| b | f的结果内容 12345 | 10 | 1234500000 0 | 3 | 000 [空] | 2 | 00 [空] | 0 | [空] 123 | 3 | 123
12 code-golf  file-system  code-golf  code-golf  string  code-golf  string  code-golf  random  game  compression  code-golf  array-manipulation  sorting  code-golf  number  arithmetic  primes  code-golf  geometry  code-golf  code-golf  decision-problem  regular-expression  code-golf  string  math  code-challenge  restricted-source  integer  palindrome  code-golf  string  palindrome  code-challenge  busy-beaver  code-golf  ascii-art  code-golf  string  code-golf  string  permutations  code-golf  code-golf  string  permutations  code-golf  number  primes  function  set-theory  code-challenge  hello-world  code-golf  math  number  decision-problem  code-golf  code-golf  sequence  arithmetic  integer  code-golf  math  number  arithmetic  decision-problem  code-golf  kolmogorov-complexity  alphabet  code-golf  combinatorics  graph-theory  tree-traversal  code-golf  set-theory  code-golf  interpreter  brainfuck  substitution  code-golf  quine  permutations 

1
我想看着你渴死
您是在两个城镇之间穿越沙漠的旅行者。您不能携带足够的水不停地穿越。这是经典拼图的变体。 规则 沙漠看起来像这样:一个WxH网格,其中大部分是空白空间。标S有空格的地方是您开始的地方,E是您要结束的地方,一个标有数字N的正方形容纳N单位水。标有.保持零水的方块。 ..................................... ........S............................ ..................................... .........7........................... ..................................... .......................3............. .....5............................... ................................2.... ..................................... ..................................... ..................................... ...............................E..... ..................................... ....................7................ ..................................... ..................................... 您以5单位水开始于S。 您最多可以携带5单位水。 每转你 向上,向下,向左或向右移动一个方块, 消耗1单位水, 拿起或放下一定数量的水。 这样会标出一个转弯:(direction)(+|-)(units of water),+表示您正在拿水,-正在放水。 示例变为: D+0 Move Down R+0 Move Right D+2 Move Down, pick up two units of water. U-1 Move Up, drop one unit …
12 code-golf  game  search 

3
音位错误
性格 我们将这些Unicode字符称为英语IPA辅音: bdfhjklmnprstvwzðŋɡʃʒθ 我们将这些Unicode字符称为 英语IPA元音: aeiouæɑɔəɛɜɪʊʌː (是的,ː这只是长元音标记,但出于此挑战的目的,请将其视为元音。) 最后,这些是主要和次要压力标记: ˈˌ 注意,ɡ(U + 0261)不是小写的g,主应力标记ˈ(U + 02C8)不是撇号,并且ː(U + 02D0)不是冒号。 你的任务 给出一个单词,将元音堆叠在跟随的辅音之上,并将重音标记放置在其跟随的辅音下方。(正如问题标题所暗示的,这样的书写系统将辅音元音序列作为一个单元打包在一起,称为abugida。)给定输入ˈbætəlʃɪp,产生输出: æə ɪ btlʃp ˈ 甲字被保证是声母,韵母和应力标记的字符串,如上面所定义。永远不会有连续的重音标记,它们将始终放置在单词的开头和/或辅音之前。 测试用例 可能有连续的元音。例如,kənˌɡrætjʊˈleɪʃən变为 ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 如果一个词以元音开头,打印在“基线”与辅音:əˈpiːl变 ː i əpl ˈ 一个测试用例的初始,强调元音:ˈælbəˌtrɔs变 ə ɔ ælbtrs ˈ ˌ 一句话:ˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəs变成 æ ː ː ʊ uə aə …

3
帮我关上箱子
在发布时,这一挑战的灵感应该非常明显。 任务 您必须创建一个Shut the Box样式程序(不是功能程序)。关闭盒子的基本知识是: 玩家尝试通过转动一组标有1-9的杠杆来关闭盒子。他们必须通过翻转操纵杆来这样做。每个回合的事件顺序如下: 显示了杠杆的当前位置。 在新游戏中,操纵杆的位置应显示为123456789。 在带有关闭杆的游戏中,所有关闭杆均显示为-。例如,在关闭了1、5和9的游戏中,输出为-234-678-。 di(c)e被滚动。 如果杠杆7、8和9都断开,则仅抛出一个六面模。否则,将抛出2个六面骰子。 提示玩家选择他们希望翻转的杆数。 如果玩家选择数字> 9或<0,则游戏结束。 如果玩家选择了已经关闭的手柄,则游戏结束。 玩家选择那么多杠杆。 如果杠杆总和不等于掷出的di(c)e的值,则游戏结束。 如果所有杠杆都关闭,那么恭喜您,您赢了。否则,请返回步骤1。 计划规则 在每一转,您都应该输出控制杆的当前位置。 您必须输出带有短语的纸卷值You rolled:(注意空格)。 您必须提示(并等待)要使用短语切换的操纵杆数量How many levers to flip:(请注意空格)。 您必须提示(并等待)与短语指定的播放器一样多的操纵杆Which lever to flip:(注意空格)。 您必须翻转指定的控制杆。 如果游戏结束,您必须输出Game Over。 如果玩家在没有拉杆的情况下完成转弯,则必须输出 You win! 游戏范例 123456789 You rolled: 5 How many levers to flip: 5 Which lever …
12 code-golf  game  random 

1
做一个青蛙解算器
🐸🐸 您必须制作最短的程序,才能始终在9x9网格上找到简化Frogger游戏的最佳解决方案。 课程内容: L-日志(长度:3-4)。当您跳上日志时,它将随身携带。 V -车辆(长度:1-2) 速度(1-2):在该行的左侧是该行中元素移动的速度。 空格:元素之间始终至少有两个空格。 方向:在“车辆”和“对数”部分中,每个车道的移动方向在左右方向上交替。 课程结构: 如果是资本,那就行了;如果是小写,则向左移动。连续的所有元素都朝着相同的方向。一旦元素的一部分离开屏幕,它就会出现在屏幕的另一侧。 第一行是安全区域。青蛙始于F,始终是同一地点。 接下来的3行是载有车辆的道路。 下一行是安全区域。 接下来的3行是带有Logs的水(接触水==死亡)。 一旦到达W车道,您就赢了。 如果青蛙死了,它会回到 F 播放器控件: L - 剩下 R - 对 U -向上 D - 下 W -等一下 移动后,另一帧通过。(请注意,帧是在移动之后通过的,而不是在移动的同时通过。)您的程序必须提供最佳解决方案,例如字符序列URWUUL。如果课程没有解决方案,则程序应输出N。 示例:(由于我是手工完成的,所以我不知道它们是否是最佳解决方案。) 0WWWWWWWWW 1升 2 LLLL 2 llll 0 1 vv vv 1 V V 1 vv 0楼 …

1
有效迷宫数
给定一个WxH网格,有多少种可能的迷宫? 您对迷宫的了解: 网格正好是H正方形,W正方形是正方形。 共有三种类型的正方形:“开始”,“完成”和“空”。迷宫必须正好包含1个开始点和1个结束点,所有剩余的方块均为空。 整个迷宫周围都有墙壁。 除非违反以下规则,否则墙可以存在于任意两个正方形之间的边缘上: 从开始方块到完成方块必须存在一条路径。 因此,给定两个数字W和H,您必须返回一个数字,代表可能的正方形/墙壁配置的数目。您保证W*H > 1 例如,2x2迷宫具有完全100不同的可能配置。 这是一个代码高尔夫球,所以最短的答案是成功的!

1
检查单身麻将的手牌值
麻将是一款在亚洲非常受欢迎的瓷砖游戏。它通常由四个玩家玩,并且游戏的目标是成为第一个使用磁砖完成有效手牌的人。在麻将中,有三副牌服和荣誉牌-对于这一挑战,我们将仅考虑使用来自单个牌服的牌形成的手。 磁贴从编号1到9,每个磁贴正好有四个副本。有效手牌由四组组成,每组三组,每组一对,共14张。 三个一组可以是: 一个三元组,三个相同的图块(例如444),或 三个连续图块的序列(例如123,678但不是357)。序列不换行(因此912无效)。 一对只是两个相同的图块(例如55)。 挑战 给定有效手牌数为14张,请根据以下条件确定其得分: Condition Description Point/s ------------------------------------------------------------------------------- Straight Contains the sequences 123 456 789 1 Identical sequences Contains two identical sequences 1 All simples Only 2-8, no 1s or 9s 1 All sequences All sets of three are sequences 1 All triplets All sets of …
12 code-golf  game 

1
通过整数操作实现IEEE 754 64位二进制浮点数
(我暂时将问题标记为“ C”,但是如果您知道另一种支持联合的语言,则也可以使用它。) 您的任务是+ - * /为以下结构构建四个标准数学运算符: union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 这样操作本身就只能操纵或访问整数部分(因此也不能在操作过程中的任何时候都与double进行比较),并且结果是完全相同的(对于非数字结果,例如,功能上是等效的NaN)好像相应的数学运算已直接应用于double。 您可以选择要操作的整数部分,甚至可以在不同的运算符之间使用不同的整数部分。(尽管我不确定您是否要这样做,您也可以选择从联合中的任何字段中删除“未签名”。) 您的分数是四个运算符中每个字符的代码长度总和。最低分获胜。 对于不熟悉IEEE 754规范的我们来说,这是一篇有关Wikipedia的文章。 编辑: 03-06 08:47在intfloat结构中添加了构造函数。您可以使用它们进行测试,而不必手动设置double /etc。

6
得分Yahtzee游戏
对于Yahtzee计分表的13行中的每行,您都会(从stdin中)获得一个由5个数字(骰子)隔开的列表。您的任务是计算每条线的分数并输出游戏的总计。 例 输入及其解释: Input Box Score 6 1 4 1 3 Aces 2 3 2 2 1 2 Twos 6 6 3 2 3 3 Threes 9 4 2 3 6 5 Fours 4 6 3 5 5 1 Fives 10 1 5 6 5 6 Sixes 12 Bonus - …
12 code-golf  number  game 

2
数论解释器,模n
一个句子数论(我们的目的)的是下列符号序列: 0和'(后继) -后继手段+1,所以0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(加法)和*(乘法) = (等于) (和)(括号) 逻辑运算符nand(a nand b是not (a and b)) forall (通用量词) v0,v1,v2等。(变量) 这是一个句子的示例: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) 这not x是简写x nand x-实际的句子会用到(v1*v1*v1 + v2*v2*v2 = v3*v3*v3) nand …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

9
中秋赌博游戏
明天是中秋节,本着节日的精神,我将介绍我们(厦门人)在节日期间玩的赌博游戏! 规则 游戏中有六个6面骰子。不同的数字组合具有不同的等级,特别强调四和一。您的工作是编写给定6个骰子的等级的手的程序/函数。以下是排名(我对规则进行了一些修改/简化): 我猜只有中国人可以挑战!好的,这是一些英文说明。 0:4个四和2个。 1:6。 2:6个 3:除4和1之外的任何形式的6。 4:5 5:除了四分之一以外的任何形式的5。 6:4 7:直 (1-6) 8:3 9:4以外的任何一种。 10:2 11:1四。 12:没事 输入值 6个数字,6个数字的数组或6个数字的字符串,它们代表1-6个骰子掷骰的值 输出量 您的程序/函数可以返回/输出任何东西来指示等级,只要每个等级由一个输出指示,反之亦然。例如 使用数字0-12、1-13等。 示例(使用0-12作为输出) [1,1,1,1,1,1]->2 [1,4,4,4,1,4]->0 [3,6,5,1,4,2]->7 [1,2,3,5,6,6]->12 [3,6,3,3,3,3]->5 [4,5,5,5,5,5]->5 这是代码高尔夫球,因此最短的字节数为准!
11 code-golf  game 

21
Minecraft语言文件更新程序
在1.13版中,Minecraft语言文件从一种简单的多行key = value格式切换为JSON。 挑战 编写一个从原始格式转换为返回JSON字符串的程序。可以使用任何标准输入方法进行输入,任何标准输出方法的输出必须为json 原始格式包含带有键=值对的行,例如 tile.dirt.name=Dirt advMode.nearestPlayer=Use "@p" to target nearest player build.tooHigh=Height limit for building is %s blocks 应该转换为key = value的一个大JSON对象 { "tile.dirt.name": "Dirt", "advMode.nearestPlayer": "Use \"@p\" to target nearest player", "build.tooHigh": "Height limit for building is %s blocks" } 一些细节 只要它包含正确的键/值对,就可以使用任何有效的JSON。允许使用尾部逗号,因为Minecraft允许使用逗号。 唯一必须避免的是引号。(1.13之前的语言文件中不存在换行符,反斜杠或其他破坏JSON的东西) 空行应忽略 行包含正好等于1的行 测试用例 输入: tile.dirt.name=Dirt …
11 code-golf  game  json 

2
我的世界库存管理
Minecraft库存管理非常困难。您有17颗钻石,但需要7颗才能制作附魔表,镐和剑。您捡起它们并右键单击7次吗?还是您右键单击一次,然后右键单击两次,然后左移7个?太混乱了! 对于那些现在感到困惑的人,请放心,我将在几秒钟内为您解释一切 挑战 给定一堆物品的大小和所需的数量,请确定获得该数量的最少点击次数。两个输入最多只需要处理64个,并且可以假定您有无限的库存位置。您不能使用拖动到分发的把戏。 定义 该库存是插槽,可存储项目的集合。 一个插槽是库存中的存储空间,您最多可以将一种类型的项目。 甲堆栈是一个数字放置在同一组项目。出于此挑战的目的,堆栈只是同一位置的一堆项目(因此,忽略堆栈大小) 将光标就是你的尖啄。那个光标。它可以有“上面”的项目;换句话说,如果您单击插槽并拾取了项目,则拾取的项目将“在光标上”,直到您放下它们为止。 技术指标 有四种可能的情况。光标上是否有项目,或者没有,左键单击或右键单击。 如果光标上没有项目,而在插槽上单击鼠标左键,则将拾取整个堆栈。 如果光标上没有项目,然后在插槽上单击鼠标右键,则将堆放的一半取整。 如果光标上有一个项目,并且在插槽上单击鼠标左键,则将所有项目都放入该插槽中。(对于您所有的Minecraft玩家,您将没有超过64件物品可以挑战,它们都可以堆叠64位,并且只有一种类型,因此物品互换不适用于此处) 如果光标上有一个项目,然后右键单击插槽,则将一个项目放入该插槽。 因此,您从插槽中给定的所有项目(第一个输入,或第二个;您可以选择顺序)开始,然后要在光标中输入所需的数量(其他输入)作为结束。 让我们来看一个例子。假设您从17个项目开始,并且想要7。首先,在堆栈上单击鼠标右键,这意味着您已拾取9,该插槽中有8。然后,如果再次在堆栈上单击鼠标右键,则将一个项目放回插槽中,使您剩下8,而插槽则有9。最后,再次单击鼠标右键,您有7,插槽有10。因此,您将返回3(点击次数)。 如果您设法使我失望,请告诉我,我将编辑示例:P 测试用例 这些是手动生成的,因此请告诉我是否有任何错误。我通过单击鼠标右键单击进行库存管理,所以我没有最佳库存管理的经验:P Given, Desired -> Output 17, 7 -> 3 64, 8 -> 5 63, 8 -> 5 10, 10 -> 1 10, 0 -> 0 # note this case 25, 17 …
11 code-golf  game 

13
怪异和野豆游戏
也许你们中有些人已经知道这个游戏:您有一系列不同颜色的软糖。对于每种颜色,豆子都有不同的口味,有些是好,有些是坏,您不能一概而论。您必须选择一种给定颜色的豆,然后祈祷您选择了一个好的豆。 因此,编写最短的程序以接收您选择的颜色(从给定列表中选择),并随机返回所选的口味。必须从内置列表中挑选口味。输入和输出的可能列表为: Input Output choices [only one from the list] -------------------------------------------------- green lawn clippings, lime, mucus, pear yellow rotten eggs, buttered popcorn blue toothpaste, blue berry orange vomit, peach brown canned dog food, chocolate white stinky socks, tutti-frutti, baby diapers, coconut 规则: 您可以假定输入将始终是输入选择中的一种颜色。 大小写和尾随空格和/或换行符无关紧要。 输出必须一致地是随机的:成功的程序执行必须产生不同的结果,并且列表中的所有口味获得给定口味的机会必须相同。 这是代码高尔夫球,所以最短的程序可能会赢!

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.