标签: code-golf

Code Golf:旋转迷宫

Code Golf:旋转迷宫


制作一个包含迷宫文件的程序.迷宫的墙壁由#.迷宫必须包括一个球,由a o和任意数量的孔给出@.迷宫文件既可以通过命令行输入,也可以通过标准输入读入.请在您的解决方案中指定哪个.

然后您的程序执行以下操作:

1: If the ball is not directly above a wall, drop it down to the nearest wall.
2: If the ball passes through a hole during step 1, remove the ball.
3: Display the maze in the standard output (followed by a newline).
   Extraneous whitespace should not be displayed.
   Extraneous whitespace is defined to be whitespace outside of a rectangle 
   that fits snugly around the maze.
4: If there is …
Run Code Online (Sandbox Code Playgroud)

language-agnostic code-golf rosetta-stone

20
推荐指数
4
解决办法
2182
查看次数

Code Golf:让我成为一个弧

挑战

按字符数计算的最短程序,接受表单的标准输入X-Y R,具有以下保证:

  • R 是小于或等于8的非负十进制数
  • XY是在十进制给定为45°的倍数(非负角度0,45,90,135,等等)
  • X 小于 Y
  • Y不是,360如果X0

并在标准输出上生成从起始角度XY半径结束角度的ASCII"弧" R,其中:

  • 弧的顶点用.表示 o
  • 的角度0180由下式表示-
  • 的角度45225由下式表示/
  • 的角度90270由下式表示|
  • 的角度135315由下式表示\
  • 由两条线包围的多边形区域填充有非空白字符.

如果给出无效输入,则程序不需要产生有意义的输出.允许使用任何语言的解决方案,当然除了专门针对此挑战而编写的语言,或者不公平地使用外部实用程序的语言.外来的水平和垂直空白允许在提供的输出的格式保持正确的输出.

开心打高尔夫!

众多例子

输入:

0-45 8

输出:

        /
       /x
      /xx
     /xxx
    /xxxx
   /xxxxx
  /xxxxxx
 /xxxxxxx …

language-agnostic geometry code-golf rosetta-stone

20
推荐指数
7
解决办法
1723
查看次数

Code Golf:Automata

我使用这些规则制作了终极笑发生器.你能用聪明的方式用自己喜欢的语言实现它吗?

规则:

在每次迭代时,都会发生以下转换.

H   -> AH
A   -> HA
AA  -> HA
HH  -> AH
AAH -> HA
HAA -> AH
Run Code Online (Sandbox Code Playgroud)

n = 0 |  H
n = 1 |  AH
n = 2 |  HAAH
n = 3 |  AHAH
n = 4 |  HAAHHAAH
n = 5 |  AHAHHA
n = 6 |  HAAHHAAHHA
n = 7 |  AHAHHAAHHA
n = 8 |  HAAHHAAHHAAHHA
n = 9 |  AHAHHAAHAHHA
n = ...
Run Code Online (Sandbox Code Playgroud)

puzzle code-golf automata rosetta-stone

19
推荐指数
3
解决办法
1698
查看次数

CodeGolf:找到独特的路径

这是一个非常简单的想法,在这个pastebin我发布了一些数字.这些代表有向图的节点.输入stdin将是形式,(他们将是数字,我将在这里使用一个例子)

c d
q r
a b
b c
d e
p q
Run Code Online (Sandbox Code Playgroud)

所以x y手段x连接到y(不是反之亦然)

该示例中有2条路径.a->b->c->d->ep->q->r.

您需要打印该图表中的所有唯一路径.输出应为格式

a->b->c->d->e
p->q->r
Run Code Online (Sandbox Code Playgroud)

笔记

  1. 您可以假设选择的数字使得一条路径不与另一条路径相交(一个节点属于一条路径)
  2. 这些对是随机顺序的.
  3. 它们不止一条路径,它们可以有不同的长度.
  4. 所有数字都小于1000.

如果您需要更多详细信息,请发表评论.我会按要求修改.

无耻插头

对于那些喜欢Codegolf的人,请在Area51上为自己的网站提交:)(对于那些不喜欢它的人,也请支持它,所以我们会让你不受欢迎...)

language-agnostic code-golf graph rosetta-stone

19
推荐指数
4
解决办法
1419
查看次数

Code Golf:谁拥有最好的扑克牌?

我喜欢这样的挑战,我希望很快能提交我的答案.

哪位牌手拥有最好的7张牌?

给出9张牌的无序列表(以空格分隔),找出哪个牌手有最好的扑克牌. 这是扑克手牌排名列表.输入示例:

2C 5H AS KS 2D 4D QD KH 3S
(ie: [[2C 5H] [AS KS] [2D 4D QD KH 3S]])
Run Code Online (Sandbox Code Playgroud)

阵列中的前2张牌代表牌手1的牌,阵列中的第2张牌代表牌手2的牌.最后5张牌代表社区牌,两张牌都分享.实际上,两个玩家都有7张牌,你必须确定哪个玩家拥有最好的5张扑克牌.

卡片被定义为一个字符串,第一个字符代表卡片值,第二个值代表西装.总是大写的.没有卡可能出现两次.

该函数将计算手牌是否为任何一名球员的平局或胜利.它将在输入结束时输出总数.输出格式稍后在本文中定义.

例子

2C 5H AS KS 2D 4D QD KH 3S
(ie: [[2C 5H] [AS KS] [2D 4D QD KH 3S]])
Player 2 wins this hand.  Player 1 has a pair of 2's, player 2 has a pair of kings.

5S 6S 8H 9D 7S 8S JH TS 2H
(ie: [[5S 6S] …
Run Code Online (Sandbox Code Playgroud)

language-agnostic code-golf rosetta-stone

18
推荐指数
3
解决办法
2712
查看次数

Code-golf:输出乘法表到控制台

我最近指出一名学生正在做一篇关于将乘法表转储到控制台的文章.它使用嵌套的for循环并乘以每个的步长值.

这看起来像.NET 2.0方法.我想知道,使用Linq和扩展方法,例如,要获得相同结果需要多少行代码.

stackoverflow社区是否能够应对挑战?

挑战:在控制台应用程序中,编写代码以生成如下示例的表:

01 02 03 04 05 06 07 08 09
02 04 06 08 10 12 14 16 18
03 06 09 12 15 18 21 24 27
04 08 12 16 20 24 28 32 36
05 10 15 20 25 30 35 40 45
06 12 18 24 30 36 42 48 54
07 14 21 28 35 42 49 56 63
08 16 24 32 40 48 56 64 72
09 18 27 …

language-agnostic code-golf rosetta-stone

18
推荐指数
10
解决办法
3468
查看次数

异步Google Analytics [Javascript Golf]

不幸的是,这可能不是一个有效的Code-Golf问题,因为它可能只是Javascript; 然而,由于 这可能是现实世界中唯一有用的代码 - 高尔夫比赛, 我将继续发布它.


谷歌Analytics(分析)Asyncronous跟踪片段被许多网站使用.

脚本有点像这样:

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
Run Code Online (Sandbox Code Playgroud)

获胜者将通过最短RAW DEFLATE被确定(有 HTTP 1.1 DEFLATE(又名ZLIB)和RAW DEFLATE之间的差)由字节数压缩代码将加载和在页面上初始化异步谷歌分析.

在平局的情况下,获胜者将由原始字符数确定.如果我们还有领带,我们将根据提交的最后编辑/时间来决定.

一些规则:

  • gaq || []检查是不需要的,应该被删除.
  • 必须是协议"意识到"(http vs https).
  • 不得污染全局命名空间(_gaqvar 除外).
  • 必须可复制到任何(X)HTML文档,即不依赖于页面的标记.
  • 必须适用于所有A级浏览器.
  • 但这 …

javascript google-analytics code-golf

18
推荐指数
1
解决办法
4288
查看次数

功能竞赛

请记住,目标上的消息说如何:

对于Cmabrigde Uinervtisy的一个小说来说,它并不是一个小小的人,而是一个小小的人,这个小小的iprmoetnt tihng是第一个,而且是ltat ltteer在rghit pclae.rset可以是一个toatl mses,你可以坐下来讨论它的问题.Tihs是bcuseae huamn mnid deos不是由istlef竞选ervey lteter,而是作为wlohe的wrod.

无论如何,我正在尝试制作一个能够完成整个页面的功能.这个功能有一些规则.

  1. 不到4个字符就可以了.
  2. 非字母数字字符不算作单词的一部分.
  3. 带连字符的单词真的是两个单词
  4. 如果长度> = 4(不能像原始版本),则必须出现乱码
  5. 第一个和最后一个字符保持不变,只有中间字符变得乱码(感谢Hersheezy)
  6. 文本应始终是随机的,并在每次运行时产生独特的褶皱
  7. 纯javascript并迭代所有文本节点
  8. 最甜蜜的代码获胜.

无论如何,它似乎很容易实现,如何开始比赛,看看谁可以制作最干净,最清晰的代码来完成这项任务.在没有我的代码识别的情况下随意借用(我有)

如果我错过了什么,请在评论中添加.无论如何,我非常狡猾地工作,这是我展示我不太平庸的工作

DEMO

var i, j, words, textNodes, punct = /[^a-zA-Z0-9]/;

Array.prototype.shuffle = function() {
    for (var i = 0; i < this.length; i++) {
        var j = i;
        while (j == i) {
            j = Math.floor(Math.random() * this.length);
        }
        var tmp = this[i];
        this[i] = this[j];
        this[j] = tmp;
    }
    return this;
};

String.prototype.shuffle = function() { …
Run Code Online (Sandbox Code Playgroud)

javascript code-golf scramble

18
推荐指数
2
解决办法
1669
查看次数

Code Golf新年版 - 罗马数字的整数

编写一个程序,该程序采用单个命令行参数N并打印出相应的罗马数字.

例如,N = 2009应打印MMIX.

假设这应该适用于0 <N <3000.

(玩得开心玩圣诞版我的第一轮代码高尔夫,并认为这可能适合新年.用Google搜索,看看它是否已经出现在其他地方,看起来它没有,但让我知道这是否太难或太容易,或者规则需要改变.)

快乐的MMIX!

language-agnostic code-golf roman-numerals rosetta-stone

17
推荐指数
7
解决办法
3660
查看次数

Code Golf:数字范围

挑战

通过用范围替换连续运行来压缩一长串数字.

输入

1, 2, 3, 4, 7, 8, 10, 12, 13, 14, 15
输入保证按升序排列,不包含重复项.

产量

1 - 4, 7, 8, 10, 12 - 15
请注意,两个数字的范围应保持不变.(7, 8;不是7 - 8)

规则

您可以接受整数(或等效数据类型)的排序列表作为方法参数,从命令行或标准输入.(选择哪个选项导致更短的代码)
您可以通过打印它们或通过返回来输出字符串列表单个字符串或一组字符串.

参考实施

(C#)

IEnumerable<string> Sample(IList<int> input) {
    for (int i = 0; i < input.Count; ) {
        var start = input[i];
        int size = 1;
        while (++i < input.Count && input[i] == start + size)
            size++;

        if (size == 1)
            yield return start.ToString();
        else …
Run Code Online (Sandbox Code Playgroud)

language-agnostic code-golf

17
推荐指数
2
解决办法
1456
查看次数