首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >N个连续硬币翻转的样本空间

N个连续硬币翻转的样本空间
EN

Code Golf用户
提问于 2021-04-03 03:51:04
回答 4查看 197关注 0票数 5

以正整数n为输入,打印n连续硬币翻转的样本空间。硬币是公平的,有两面HT,每一方都有概率0.5

例如,

输入- 3

产出-

代码语言:javascript
复制
HHH
HHT
HTH
HTT
THH
THT
TTH
TTT

规则

  • 适用标准漏洞
  • 您可以按顺序打印元素,但所有元素都应在场。
  • 你可以使用任何形式的输出,只要正面和反面显示为'H‘和'T',而且所有元素都是易读的。

这是code-golf,所以以字节为单位的最短代码获胜。祝好运!

EN

回答 4

Code Golf用户

发布于 2021-04-03 04:02:33

果冻,4 字节数

代码语言:javascript
复制
⁾HTṗ

一种接受非负整数的一元链接,它产生一个字符列表.

在网上试试! (页脚调用链接并与换行符连接)

怎么做?

代码语言:javascript
复制
⁾HTṗ - Link: integer, n
⁾HT  - list o characters = ['H', 'T']
   ṗ - (that) Cartesian power (n)
票数 3
EN

Code Golf用户

发布于 2021-04-03 04:10:25

Python 3,50字节

代码语言:javascript
复制
lambda x:product(*["HT"]*x);from itertools import*

在网上试试!

我更喜欢我的递归方法,但不幸的是,使用模块内置更短的lol。

Python 3,54字节

代码语言:javascript
复制
f=lambda x:x and[y+q for y in f(x-1)for q in"HT"]or" "

在网上试试!

-1字节多亏了乔纳森·艾伦

票数 3
EN

Code Golf用户

发布于 2021-04-03 05:20:54

JavaScript (Node.js),52字节

代码语言:javascript
复制
f=(x,a=[''])=>x?f(--x,a.flatMap(n=>[n+'H',n+'T'])):a

在网上试试!

一种非常简单的递归方法。

票数 0
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/222807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档