duangsuse::Echo
介于这个原因,我要好好放松一下,所以真的不想编程什么的 后来我考虑了一下 Lkt 工具…… 怎么工作呢?其实我基本了解生成过程了,就是把所有 markdown resolvePath 安排好,然后弄 config file generateProject 即可 其中最关键的流程就是 启动 -> 令 Plugin 解析 root README -> 创建 Plugin 的 Intrinsic -> handle root README -T -t 都是创建 GenerateIntrinsic 用的 -s…
所以说在项目里注意代码的复用性是很重要的! #dev #statement
这个例子里,我开始是不明白应该怎么写的,可对最初的设计进行「可扩展性提升」后,变得更容易实现了呢。
这就好像是在操作系统内核和开发工具的共同努力之下,把程序映像分段,虽然内存编址空间没有提升,但可以运行的程序数目却成倍地得到提升。
智商虽然没有得到提升,但解决的问题简单了、细分了,就可以兼容更多能被拆分开的问题,也能方便未来的维护,拥有更清晰的逻辑,为什么不呢?
这个例子里,我开始是不明白应该怎么写的,可对最初的设计进行「可扩展性提升」后,变得更容易实现了呢。
这就好像是在操作系统内核和开发工具的共同努力之下,把程序映像分段,虽然内存编址空间没有提升,但可以运行的程序数目却成倍地得到提升。
智商虽然没有得到提升,但解决的问题简单了、细分了,就可以兼容更多能被拆分开的问题,也能方便未来的维护,拥有更清晰的逻辑,为什么不呢?
(TON)Fift 和其虚拟机主要是解释的问题,最大和高性能计算、GPGPU 扯关系,和泛向的程序设计语言关系应该不大吧,要计算来验证虚拟实体是否造假?
『数字到汉字』并非进制转换(这也包括时间单位选择等)那样简单容易,随便 div+mod 除余就可以完成。
三百一十 是相同的情况三十亿 是不同的情况化成数学问题用基本数论的位置计数法和对数
log_k 也是容易解决的,但汉字数这个东西需要分区间处理,而且变化比较大,不好直接化单位,不得不使用非常 dirty 的变通。绝句当时支持也只是说解释上能兼容这种格式,没说要默认用这种格式。
duangsuse::Echo
稍微 apply 了一下渐进设计,但我还是无法感知算法的灵魂
>>> hanTextFromInt(10000000)
一千
>>> hanTextFromInt(1000000000)
一十
之所以说它 dirty 是因为这种情况它会傻眼,所以递归算法里必须有修改,但我才懒得改呢…… 绝句也不需要支持
hanziFromInthanzi.kt
1 KB
我才懒得写能 pass 的版本呢(喷),这个版本
(1..100_000_000).map(::hanTextFromInt).sumBy { it.length } 算不出来,太难了,但可以用模拟只记 sum 长度列表算,而且写出正确算法以后带换下抽象数据类型就可以得到 partial info 的计算结果,那是不需要脑子的。需要脑子的是:如何把它写明白。写明白、写出灵魂永远是第一位,无论你是在写 app 抑或是算法题,但是我不会太多算法,所以,打住。
这个实现(虽然不完全)的关键词有两个:(Set)
第一个用来选择某数的最大单位,从而把输出问题化为子问题解决。
第二个则是基本的进制换算常用模式,div 的是某单位上的数位、mod 出的是余下比它小的数值,也是递归子问题。
汉字数的模式基本就是这样:
+
我不是想要教小白了解…… 以上。 #Algorithm #Kotlin
这个实现(虽然不完全)的关键词有两个:(Set)
findMaxLessEqual. (Int) divMod 第一个用来选择某数的最大单位,从而把输出问题化为子问题解决。
第二个则是基本的进制换算常用模式,div 的是某单位上的数位、mod 出的是余下比它小的数值,也是递归子问题。
汉字数的模式基本就是这样:
+ 零例:二百二十、二十一、三十一万
+ 一~九
+ (lessThan 某单位) 某单位 (equal (pred 某单位))
+
(lessThan 某单位) 某单位 零 (lessThan 某单位)
例:一千零八十二我不是想要教小白了解…… 以上。 #Algorithm #Kotlin
进步就是否定自己,这样才能变得更好,但长此以往就容易人格扭曲,变得高傲自负,甚至连亲朋好友都不放在心上。(开玩笑 😂)
我必须拿一些现在有把握的东西自我娱乐一下。
Forwarded from duangsuse::Echo
我要尝试给 debuggable 标签正名,所以必有一点是必须做的:
在这个部分插入翻转后的 DEBUGGABLE_ATTR (
就是
在这个部分插入翻转后的 DEBUGGABLE_ATTR (
0x0101000f)就是
0x0f000101