forked from wa-lang/base60
trueabc d63a60d1ef | ||
---|---|---|
example | ||
log | ||
src | ||
vendor/bigint | ||
.gitignore | ||
README.md | ||
wa.mod.json |
README.md
GitLink编程夏令营(GLCC),是在CCF中国计算机学会指导下,由CCF开源发展委员会(CCF ODC)举办的面向全国高校学生的暑期编程活动。活动将覆盖近千所高校,并联合各大开源基金会、开源企业、开源社区、开源专家,旨在鼓励青年学生通过参加真实的开源软件开发,提升自身技术能力,为开源社区输送优秀人才。为青年学生提供开放友好的交流平台,希望进一步推动国内开源社区的繁荣发展。
凹语言开发组将作为指导组织参加本次的 GitLink编程夏令营(GLCC 2023)
目标
使用国内开源社区创建的 凹语言 开发 天干地支码 编解码库。
难度
中等
导师
丁尔男 电邮:ending@wa-lang.org
结果要求
- 60分线:提交使用凹语言编写的天干地支码编解码库;
- 80分线:除1外,额外提交测试用例、性能分析报告;
- 100分线:除2外,额外可编解码天干地支码的在线App(提交调用项目1成果)。 开源创新,在很多时候体现为“使用有限的能力创造出更强的能力”,这也是我们对接题者的考察重点——既同学们需要使用凹语言的基本特性,从下至上的组合出本题所需的各种组件进而结题。
天干地支码简介
天干地支纪年法,使用十天干(甲、乙、丙、丁、戊、己、庚、辛、壬、癸),十二地支(子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥)配合,每隔60年为一个轮回,可以将其类比为60进制(与二进制、十进制等对应)。天干地支码的本质既将输入的二进制数据串看作一个二进制的大整数B,将其转换为60进制的整数D,整数D的每一位对应一个干支码,最终所得的表达既为输入数据的天干地址码。每个干支码对应的10进制数如下表所示:
00 甲子 | 10 甲戌 | 20 甲申 | 30 甲午 | 40 甲辰 | 50 甲寅 |
01 乙丑 | 11 乙亥 | 21 乙酉 | 31 乙未 | 41 乙巳 | 51 乙卯 |
02 丙寅 | 12 丙子 | 22 丙戌 | 32 丙申 | 42 丙午 | 52 丙辰 |
03 丁卯 | 13 丁丑 | 23 丁亥 | 33 丁酉 | 43 丁未 | 53 丁巳 |
04 戊辰 | 14 戊寅 | 24 戊子 | 34 戊戌 | 44 戊申 | 54 戊午 |
05 己巳 | 15 己卯 | 25 己丑 | 35 己亥 | 45 己酉 | 55 己未 |
06 庚午 | 16 庚辰 | 26 庚寅 | 36 庚子 | 46 庚戌 | 56 庚申 |
07 辛未 | 17 辛巳 | 27 辛卯 | 37 辛丑 | 47 辛亥 | 57 辛酉 |
08 壬申 | 18 壬午 | 28 壬辰 | 38 壬寅 | 48 壬子 | 58 壬戌 |
09 癸酉 | 19 癸未 | 29 癸巳 | 39 癸卯 | 49 癸丑 | 59 癸亥 |
如:UTF8编码的“你好”,其对应的天干地支码为:“乙丑癸巳甲寅己亥丁卯甲申丁未甲午己巳”。