leaftlet中文文档
因为最近要做P5X的互动地图,所以接触一下这个API
地图
API 的核心类 — 它用来在页面中创建并操作地图。
使用示例
12345// 使用 id 为 map 的 div 容器初始化地图,同时指定地图的中心点和缩放级别var map = L.map(‘map’, { center: [51.505, -0.09], zoom: 13});
创建对象
工厂函数
说明
L.map(<String> id, <Map options> options?)
在一个指定 id 的 div 元素中初始化地图并设置相关参数。
L.map(<HTMLElement> el, <Map options> options?)
在一个 div 实例中初始化地图并设置相关参数。
Options 选项
选项
类型
默认值
说明
preferCanvas
Boolean
false
是否使用 Canvas 来渲染 Path(路径).默认情况下,所有 Path 都是使用 SVG 进行渲染。
...
P5X战斗相关公式
所有的公式
总伤害机制的计算公式
总伤害=ATK×倍率×防御力效率×伤害加成×克制系数×Tech乘区×随机系数总伤害 = ATK \times 倍率 \times 防御力效率 \times 伤害加成 \times 克制系数 \times Tech乘区 \times 随机系数
总伤害=ATK×倍率×防御力效率×伤害加成×克制系数×Tech乘区×随机系数
其中 伤害加成=伤害加成+元素增伤+易伤+减伤减免伤害加成 = 伤害加成 + 元素增伤 + 易伤 + 减伤减免伤害加成=伤害加成+元素增伤+易伤+减伤减免
随机系数=random(0.95,1.05)随机系数 = random(0.95,1.05)随机系数=random(0.95,1.05) (这个设定有点像梦幻西游的伤害波动)
防御力效率=14001400+(防御总值−防御基值×Σ减防)×(1−风袭)×(1−穿透)防御力效率=\frac{1400}{1400+(防御总值-防御基值\times\Sigma减防)\times(1-风袭)\times(1-穿透)}
防御力效率=1400+(防御总值−防御基值×Σ减防)×(1−风袭)×(1−穿 ...
butterfly主题配置KaTex
在做博弈论笔记的时候,发现公式显示不了,最后决定还是使用和VsCode一样的KaTeX
首先去你的_config.butterfly.yml配置文件中关闭mathjax并打开KaTex
之后执行下面的命令卸载掉原来的渲染器
1npm un hexo-renderer-marked --save
之后再安装新的渲染器
1npm i hexo-renderer-markdown-it-katex
在_config.yml中最后的部分配置以下字段
1234567891011markdown: render: html: true xhtmlOut: false breaks: true linkify: true typographer: true plugins: anchors: level: 1 collisionSuffix: ''
最后hexo clean,hexo g一起喝成,之后就可以用了.
参考文献:
Hexo + Butterfly 建站指南(八)使用 KaTeX 数学公式
博弈论学习笔记1
1.有关囚徒困境与博弈标准式
两个犯罪嫌疑人被捕并受到指控,但除非至少一个人招认犯罪,警方并无充足证据将其按罪判刑。警方把他们关入不同牢室,并对他们说明不同行动带来的后果。如果两人都不坦白,将均被判为轻度犯罪,入狱一个月;如果双方都坦白招认,都将被判入狱6个月;最后,如果一人招认而另一人拒不坦白,招认的一方将马上获释,而另一人将判入狱9个月——所犯罪行6个月,干扰司法加判3个月。
囚徒困境可以用下面的 双变量矩阵表 来表示
囚徒1
囚徒1
不坦白
坦白
囚徒2
不坦白
(-1, -1)
(0,-9)
囚徒2
坦白
(-9, 0)
(-6,-6)
其中囚徒1的后果在前面,囚徒2的后果在后面
博弈论标准式
博弈论标准式的表述包含:
博弈的参与者
每一参与者可供选择的战略集
针对所有参与者可供原则的战略组合
经过一系列复杂的定义得到
在一个n人博弈的标准式表述中,参与者的战略空间为 S1,...,SnS_1,...,S_nS1,...,Sn 收益函数为 u1,...,unu_1,...,u_nu1,...,un 我们用
G ...
C++进阶知识笔记
文件与流
也就是iostream标准库,里面提供了常用的cin和cout方法,分别用于 标准输入读取流 和 标准输出写入流, 也就是对流操作要用这两个方法.
这两个流基本上是用在终端上的,与文件交互则需要另一个标准库fstream, 这里面定义了三种新的数据类型:
数据类型
描述
ofstream
表示输出文件流,用于创建文件并向文件中写入信息
ifstream
表示输入文件流,用于从文件中读取信息
fstream
表示文件流,既可以作为输入文件流,也可以作为输出文件流
因此,C++中要处理文件就必须在代码中包含和这两个头文件。
打开文件
ofstream 和 fstream 都可以打开文件进行写操作,如果只需要打开文件并执行读操作,则使用 ifstream 对象。
以下是open函数的使用方法
1void open(const char* filename, ios::openmode mode);
其中,filename参数表示要打开的文件名,mode参数表示打开文件的模式,可以是以下值之一:
模式标志
描述
ios::app
追加模式,所 ...
买卖股票的最佳时机-每天1LeetCode
题目
给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。
你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。
返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。
示例 1:
1234输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。
示例 2:
12输入:prices = [7,6,4,3,1]输出:0
解释:在这种情况下, 没有交易完成, 所以最大利润为 0。
提示:
1 <= prices.length <= 105
0 <= prices[i] <= 104
解法1 - 两层遍历
1234567891011121314151617181920#include <vector>us ...
北大侠客行指令列表
纯文字不带样式的指令列表实在是看的眼疼,就整理了这一份文档
标准命令
ask sb about sth
向别人打探某件事情,sb 是指别人的id,这个命令在解谜时很重要,通常需要ask才能获得进一步的信息
auto_reply
设定自动回复信息
beg sth from sb
向某人乞讨,丐帮弟子才能使用
changewield
交换左右两手的武器
check sb
打听别人技能,丐帮弟子才能使用
close men,close door
关门
drop sth
丢弃某种物品
emote
做一个系统没有定义的动作
fight sb
要求别人与你进行战斗,这种形式的战斗是点到为止
follow sb
跟随别人一起行动
get sth ;get all
捡起物品
give sb sth;give sth to sb
给别人东西
go 方向 或者直接用方向
移动到某个方向
guard 方向 ;guard sb ;guard sth
守卫某个方向,物品或人物
halt
强行中止正在进行的动作
hit sb
强迫对方与你战斗,可以一直hit直到对方昏迷
hitall sb ;hitall
强迫同 ...
最后一个单词的长度
题目
给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
123输入:s = "Hello World"输出:5解释:最后一个单词是“World”,长度为 5。
示例 2:
123输入:s = " fly me to the moon "输出:4解释:最后一个单词是“moon”,长度为 4。
示例 3:
123输入:s = "luffy is still joyboy"输出:6解释:最后一个单词是长度为 6 的“joyboy”。
提示:
1 <= s.length <= 104
s 仅有英文字母和空格 ' ' 组成
s 中至少存在一个单词
解法
因为输入字符串仅由字母和空格组成,所以抛开空格剩下的就是单词,
所以遇见非空格表示是一个字母,长度+1。
遇到空格表示一个单词结束,把有效长度记录到结果数组中。
也要注意最后一个单词可能没有空格,所以最后要手动把长度再记录一次,反正有没 ...
搜索插入位置-每日天1LeetCode
题目
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
请必须使用时间复杂度为 O(log n) 的算法。
示例 1:
12输入: nums = [1,3,5,6], target = 5输出: 2
示例 2:
12输入: nums = [1,3,5,6], target = 2输出: 1
示例 3:
12输入: nums = [1,3,5,6], target = 7输出: 4
提示:
1 <= nums.length <= 104
-104 <= nums[i] <= 104
nums 为 无重复元素 的 升序 排列数组
-104 <= target <= 104
解法
因为这是一个 无重复元素 的 升序 排列数组,而且题目也不会去检测原数组,所以我们只需要遍历一遍就行
1234567891011121314151617181920212223242526#include <vector>using namespace std;class Solution & ...
找出字符串中第一个匹配项的下标-每天1LeetCode
题目
给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。
示例 1:
1234输入:haystack = "sadbutsad", needle = "sad"输出:0解释:"sad" 在下标 0 和 6 处匹配。第一个匹配项的下标是 0 ,所以返回 0 。
示例 2:
123输入:haystack = "leetcode", needle = "leeto"输出:-1解释:"leeto" 没有在 "leetcode" 中出现,所以返回 -1 。
提示:
1 <= haystack.length, needle.length <= 104
haystack 和 needle 仅由小写英文字符组成
我的解法
遍历每个字符,要是找到了第一个相同的字符就看看后边的字 ...