最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

(萌新專向)我的世界BE版本命令二分法的詳細(xì)解析(二分法是什么)

2023-07-22 01:55 作者:卄grass卄  | 我要投稿

(PS:本專欄不面相編程……我Java才剛開始學(xué)QwQ)

關(guān)于二分法,想必大家都不陌生,就是逐漸分割的算法。

這里可能有些小伙伴不理解,我在這里解釋一下。 假設(shè)你現(xiàn)在正在一個(gè)平面坐標(biāo)系上,你為原點(diǎn),縱軸是y,橫軸為x。 我們分別給縱軸,橫軸標(biāo)一個(gè)計(jì)分板。

/scoreboard objectives add x dummy "x軸"

/scoreboard objectives add y dummy "y軸"

現(xiàn)在,你正在用定點(diǎn)傳送,標(biāo)記了一個(gè)位置,在

x:666 y:233

/scoreboard players set @s x 666

/scoreboard players set @s y 233

那么,這時(shí)候該怎么辦呢?如何完成指令的定點(diǎn)傳送? 這個(gè)時(shí)候肯定會(huì)有聰明的小伙伴講:啊,那我用窮舉不好了?,x軸每tp1格加1分,一直tp到666分?jǐn)?shù),而y軸也是一樣。 如果指令運(yùn)行按照mc

每游戲刻

(game tick,簡(jiǎn)稱gt)

=0.05s

的情況下(忽略卡頓以及其他可能有的誤差),也就是

1s=20gt

,

到666格也就是666/20=33.3

秒!都?jí)蛭遗?00米短跑了! 而且萬一遇見1000格,10000格的情況下,一秒20格的速度終究是太感人了。

(都?jí)蛭遗菖菝媪?

扯了這么多,終于到我們的正題了。 二分法是什么?又是如何解決我們上面問題的呢? 其實(shí)很簡(jiǎn)單,我這里舉了一個(gè)例子。 我要to到666格的地方,于是我先開始檢測(cè)

/execute @a[scores={x=1024..}] ~ ~ ~ tp @s ~1024 ~ ~

(指令大意:傳送玩家,如果計(jì)分板“x”分?jǐn)?shù)大于等于1024,那么就將玩家向x軸傳送1024格)

如果未執(zhí)行成功,則跳過該條命令,執(zhí)行下一條。

/execute @a[scores={x=512..}] ~ ~ ~ tp @s ~512 ~ ~

(解釋同上,不過1024改為512)

/execute @a[scores={x=256..}] ~ ~ ~ tp @s ~256 ~ ~

(基本同上……)

/execute @a[scores={x=128..}] ~ ~ ~ tp @s ~128 ~ ~

(……) 就這樣,一直除到1。 你發(fā)現(xiàn)什么規(guī)律沒有?

512=1024/2

256=512/2

…… 沒錯(cuò),下一個(gè)數(shù)都是上一個(gè)數(shù)的

(n^2)/2

現(xiàn)在知道為什么是二分法了吧( ?° ?? ?°)? 這時(shí)候就會(huì)有人問了:?。磕隳鼙WC能算出我想要的數(shù)嗎? 放心,這就是道規(guī)律題:

n^2+(n-1)^2+(n-2)^2+……+1

這是可以到其化簡(jiǎn):

(2n)^2-1

以內(nèi)的任何數(shù)的。 舉個(gè)例

666=512+128+16+8+2

看看,沒騙你吧。 那么單數(shù)怎么辦? 像是y軸是233 這個(gè)很簡(jiǎn)單,在后面加個(gè)1

/execute @a[scores={y=1}] ~ ~ ~ tp @s ~ ~1 ~

那么問題又來了,負(fù)數(shù)怎么辦呢?像是x=-111 y=-16 我這里有兩種解決方案,第一種是檢測(cè)小于0,直接跳過前面的步驟,變?yōu)椋?

/execute @a[scores={x=-64..}] ~ ~ ~ tp @s ~-64 ~ ~

至于如何檢測(cè)小于0,我推薦用scoreboard players operation 讓數(shù)據(jù)與一個(gè)x值與y值為0的工具面板比較,若是>=0,則執(zhí)行上面步驟,若<=0,則tp負(fù)數(shù)。 另外一種就是減法到0的算法,也是檢測(cè)大于小于0 不過略有差別。 至于該怎么寫……那就是你們的……作業(yè)了!

(絕對(duì)不是因?yàn)槲易约簯校?

新人up,有錯(cuò)指出~求關(guān)注和點(diǎn)贊~ 點(diǎn)贊破十光速更新下一期。

(萌新專向)我的世界BE版本命令二分法的詳細(xì)解析(二分法是什么)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
贵州省| 潼关县| 柏乡县| 阿克陶县| 高雄市| 梨树县| 临夏市| 当涂县| 云林县| 广丰县| 茌平县| 平罗县| 灯塔市| 巨野县| 榆林市| 柳林县| 昌乐县| 盈江县| 沽源县| 抚顺县| 胶州市| 邹城市| 龙山县| 隆昌县| 乌鲁木齐市| 福州市| 崇义县| 扶余县| 东丽区| 东海县| 泗阳县| 竹北市| 临夏县| 额敏县| 开阳县| 灵台县| 钟山县| 鹤山市| 新建县| 阳城县| 永靖县|