#javascript #blog (虽然很简单)算法整理
https://blog.lwl12.com/read/ife-s-task01.html "IFE 2015 Summer Game Qihang TASK01"
虽然只是很简单的表达式,我推敲了一会,主要是考虑概率平不平均,实际上很平均(主要是我数学不好 233
Math.random 会返回一个小数,介于 0 到 1 之间
三倍之后,0.1 0.2 0.3 (下的)会舍为 1 ( 0.9 最高
0.4 0.5 0.6 会舍为 2 ( 1.8 最高
0.7 0.8 0.9 会舍为 3 ( 2.7 最高
然后就是
btw: JavaScript 没 goto 语法啊...
不知道能不能再搞个什么特别的加速啥的(billion 级的数据 23333 XD
https://blog.lwl12.com/read/ife-s-task01.html "IFE 2015 Summer Game Qihang TASK01"
Math.ceil(Math.random() * 3)虽然只是很简单的表达式,我推敲了一会,主要是考虑概率平不平均,实际上很平均(主要是我数学不好 233
Math.random 会返回一个小数,介于 0 到 1 之间
三倍之后,0.1 0.2 0.3 (下的)会舍为 1 ( 0.9 最高
0.4 0.5 0.6 会舍为 2 ( 1.8 最高
0.7 0.8 0.9 会舍为 3 ( 2.7 最高
然后就是
function randomPos() {
return Math.ceil(Math.random() * 3);
}
function judge(userPos, botPos) {
if (userPos == botPos) return 0;
// 1: 石头 2: 剪刀 3: 布
if (userPos == 3 && botPos == 1) return -1;
if (botPos == 1 && userPos == 3) return 1;
if (userPos > botPos) return -1;
return 1; // bot wins
}btw: JavaScript 没 goto 语法啊...
不知道能不能再搞个什么特别的加速啥的(billion 级的数据 23333 XD
Forwarded from duangsues.is_a? SaltedFish
JavaScript Number 数值一大就要溢出(划掉)损失精度,气死
还有我的 NodeJS v8 上居然没有 Integer 类,这是为何,而且 "use strict" 了尾递归优化也不能生效...
还有我的 NodeJS v8 上居然没有 Integer 类,这是为何,而且 "use strict" 了尾递归优化也不能生效...
(define fibonacci#cs #pl #scheme Y 组合子版本的 Fibonacci(其实只是我懒得输入
(lambda (nth)
; 不会写了...
))
(fibonacci n 1 2) 然后从 《The Little Schemer》儿童书上抄写的模式 XD至于为什么用 Y Combinator 实现递归是因为我不想多定义一个符号了(
(define fibonacci或者,也可以使用匿名函数版本 这个我没有抄模式...
(lambda (n a b)
(cond
((= 0 n) a + b)
(else (fibonacci (- n 1) b (+ a b))))))
(define fibo (lambda (n) (fibonacci n 1 2)))
(define fibonacci
((lambda (fibonacci-def)
(lambda (n)
(cond
((= n 0) 0)
(else (fibonacci-def fibonacci-def (- n 1) 0 1))))) ; 我把这里能访问到的 fibonacci-def 传给了真正的子程序
(lambda (l nth a b) ; 第一项是这个 lambda 自身
(cond
((= nth 0) (+ a b))
(else (l l (- nth 1) b (+ a b)))))))
; 这是真的演算 lambda
(lambda (nth a b)
(cond
((= nth 0) (+ a b))
(else (fibonacci-def (- n 1)))))
duangsuse::Echo
由于使用了尾调用优化,Chez Scheme 可以轻松地把递归转化为高效率循环,Scheme 使用递归实现循环,目前这居然还是我第一次看到 TCO... 好感动 2333
我的 JavaScript Node v8.x
奇妙的是,它居然还使用了 RangeError...
> fibonacci(999)
1.8412729310978296e+209
> fibonacci(9999)
RangeError: Maximum call stack size exceeded
奇妙的是,它居然还使用了 RangeError...
duangsuse::Echo
(define fibonacci (lambda (nth) ; 不会写了... )) #cs #pl #scheme Y 组合子版本的 Fibonacci(其实只是我懒得输入 (fibonacci n 1 2) 然后从 《The Little Schemer》儿童书上抄写的模式 XD 至于为什么用 Y Combinator 实现递归是因为我不想多定义一个符号了( (define fibonacci (lambda (n a b)…
真正的 Y 组合子(应用序 Y 组合子,Applicative-Order Y Combinator)长这样:
https://gist.github.com/z5h/5102747
这里有更多应用序 Y 组合子,Clojure 编写
(define Y鬼知道它是做什么的... cs::PL 和递归基础之一(跑
(lambda (λ)
((lambda (f) (f f))
(lambda (f)
(λ (lambda (ϡ) (f f) ϡ))))))
https://gist.github.com/z5h/5102747
这里有更多应用序 Y 组合子,Clojure 编写
Gist
Applicative-Order Y Combinator (Clojure Version)
Applicative-Order Y Combinator (Clojure Version). GitHub Gist: instantly share code, notes, and snippets.
duangsuse::Echo
🐶 Sticker
最近观察到人数回落,Cheers! 🎉
频道本来是给一些乐意学习并了解新知识、有趣的技术的人来的
所以可能不实用。作者自己水平不行而且连 Android 应用都不会写、PHP 也不会、Web 应用没写几个、游戏同上
是给类似的菜鸡们写的,一起进步,不然为何不去 @ice1000 或者 RednaxelaFX 等 CS 狂那里
如果你对这些无用的知识不感兴趣,欢迎 Leave Channel.
我很乐意有很多人看频道的消息,但是这些也都是虚的,现在除了高中生和部分大学生,大概没几个人愿意学不实用、不简单的知识了
duangsuse 的自我介绍现在是 "菜是原罪" Technical unfamiliar is the root of all evil
就是说 要通过不断的学习和尝试、写代码来弥补自己技术上,不管是哪方面哪怕是诸如动画效果、PHP 程序一类的无知,当然原话谁说的不重要(
频道本来是给一些乐意学习并了解新知识、有趣的技术的人来的
所以可能不实用。作者自己水平不行而且连 Android 应用都不会写、PHP 也不会、Web 应用没写几个、游戏同上
是给类似的菜鸡们写的,一起进步,不然为何不去 @ice1000 或者 RednaxelaFX 等 CS 狂那里
如果你对这些无用的知识不感兴趣,欢迎 Leave Channel.
我很乐意有很多人看频道的消息,但是这些也都是虚的,现在除了高中生和部分大学生,大概没几个人愿意学不实用、不简单的知识了
duangsuse 的自我介绍现在是 "菜是原罪" Technical unfamiliar is the root of all evil
就是说 要通过不断的学习和尝试、写代码来弥补自己技术上,不管是哪方面哪怕是诸如动画效果、PHP 程序一类的无知,当然原话谁说的不重要(
duangsuse::Echo pinned «最近观察到人数回落,Cheers! 🎉 频道本来是给一些乐意学习并了解新知识、有趣的技术的人来的 所以可能不实用。作者自己水平不行而且连 Android 应用都不会写、PHP 也不会、Web 应用没写几个、游戏同上 是给类似的菜鸡们写的,一起进步,不然为何不去 @ice1000 或者 RednaxelaFX 等 CS 狂那里 如果你对这些无用的知识不感兴趣,欢迎 Leave Channel. 我很乐意有很多人看频道的消息,但是这些也都是虚的,现在除了高中生和部分大学生,大概没几个人愿意学不实用、不简单的知识了…»
#recommended #project #php #laravel #web #dev
https://github.com/MoePlayer/laravel-danmaku
这个项目作为 Laravel 纯 JSON + RDBMS 项目模板很好
几乎没有一行代码是多余的,全都准确易懂地描述了接口逻辑
https://github.com/MoePlayer/laravel-danmaku
这个项目作为 Laravel 纯 JSON + RDBMS 项目模板很好
几乎没有一行代码是多余的,全都准确易懂地描述了接口逻辑
GitHub
GitHub - MoePlayer/laravel-danmaku: DPlayer Danmaku
DPlayer Danmaku. Contribute to MoePlayer/laravel-danmaku development by creating an account on GitHub.
duangsuse::Echo
#recommended #project #php #laravel #web #dev https://github.com/MoePlayer/laravel-danmaku 这个项目作为 Laravel 纯 JSON + RDBMS 项目模板很好 几乎没有一行代码是多余的,全都准确易懂地描述了接口逻辑
一个同样的接口实现, #Ruby on #Rails 框架可能就要为自己复杂不堪的项目结构而担心了
https://github.com/MoePlayer/RailsGun
vendor tmp test public log lib/tasks db config bin app
足足十多个目录,猜猜他们都干些什么?接口真正的业务逻辑放在哪里呢?
其中很多文件甚至就只有一个空壳,类似
https://github.com/MoePlayer/RailsGun
vendor tmp test public log lib/tasks db config bin app
足足十多个目录,猜猜他们都干些什么?接口真正的业务逻辑放在哪里呢?
其中很多文件甚至就只有一个空壳,类似
class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
endGitHub
MoePlayer/RailsGun
:gun: Dplayer backend for rails 弹幕军火库。姬~~。。 超电磁炮!!! - MoePlayer/RailsGun
duangsuse::Echo
(TODO List 1. chinese.h 2. 整理 GitApk.popf.rip 3. Gekyll 4. 写一些科普什么的 5. RebaseServer
This media is not supported in your browser
VIEW IN TELEGRAM
#include "chinese.h"
无返回 misc();
noreturn 整数 main(整数 argc, 字符 数组(指向(argv))) 定义为
打印("你好世界") 然后
调用方法(misc) 然后 退出程序(0);
结束
函数 misc() 定义为
无限循环 做
打印("%c", 获取字符()) 然后
完成
结束