首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获得系统化学符号

获得系统化学符号
EN

Code Golf用户
提问于 2020-10-23 19:55:53
回答 13查看 1.7K关注 0票数 21

背景

系统化学符号是为118 < n < 1000 定义的:

  • 第一个字母对应于第一个数字,大写。
  • 第二个字母对应于第二个数字。
  • 第三个字母对应于第三个数字。

这可以推广到所有n > 0

  • 对于每个数字,得到相应的字母。
  • 大写第一个字符。

任务

编写一个函数或完整程序,该函数或完整程序接受整数或数字列表( n > 0 )并返回或打印相应的系统化学符号。

代码语言:javascript
运行
复制
Digit | Letter
--------------
0     | n
1     | u
2     | b
3     | t
4     | q
5     | p
6     | h
7     | s
8     | o
9     | e

这是密码-高尔夫,所以最短的代码就赢了。

测试用例

代码语言:javascript
运行
复制
In - Out
----------
119 - Uue
120 - Ubn
123 - Ubt
999 - Eee
6859 - Hope
1 - U
92 - Eb
987654321 - Eoshpqtbu
1010101 - Unununu
EN

回答 13

Code Golf用户

发布于 2020-10-23 20:33:28

05AB1E,13字节

输入是一个数字列表。

代码语言:javascript
运行
复制
.•*Š"—Êo•sèJ™

在网上试试!试试看所有的案子!

评论:

代码语言:javascript
运行
复制
.•*Š"—Êo•      # compressed alphabet string "nubtqphsoe"
         s     # swap to implicit input
          è    # index each digit into the string
           J   # join into a single string
            ™  # apply title case

请参见分步输出这里

莱沙尔建议另一个13位用户使用更好的输入格式:

代码语言:javascript
运行
复制
.•*Š"—Êo•ÅвJ™

在网上试试!

这使用Åв,它将输入整数转换为字符串定义的自定义基。

票数 8
EN

Code Golf用户

发布于 2020-10-23 20:02:12

果冻,15字节

代码语言:javascript
运行
复制
ị“ubtqphsoen”Œt

在网上试试!

输入为数字列表,这是页脚为您所做的。

由于字符串看起来无法压缩,这很可能是果冻中最短的方法。

是如何工作的

代码语言:javascript
运行
复制
ị“ubtqphsoen”Œt - Main link. Takes a list l on the left
 “ubtqphsoen”   - Yield the string “ubtqphsoen”
ị               - For each digit in l, index into the string (1-indexing)
             Œt - Title case (capitalise the first character)
票数 6
EN

Code Golf用户

发布于 2020-10-24 01:49:05

哈斯克尔,48字节

代码语言:javascript
运行
复制
zipWith(\i d->["NUBTQPHSOE"!!d..]!!i)$0:k
k=32:k

在网上试试!

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

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

复制
相关文章

相似问题

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