无主之地2配置高吗|看真人裸体BBBBB|秋草莓丝瓜黄瓜榴莲色多多|真人強奷112分钟|精品一卡2卡3卡四卡新区|日本成人深夜苍井空|八十年代动画片

網(wǎng)易首頁(yè) > 網(wǎng)易號(hào) > 正文 申請(qǐng)入駐

2026-04-30:交替刪除操作后最后剩下的整數(shù)。用go語(yǔ)言,給定一個(gè)整數(shù) n,把 1 到 n 依次排成一行。之后反復(fù)進(jìn)行兩種刪數(shù)方式,并且這兩種

0
分享至

2026-04-30:交替刪除操作后最后剩下的整數(shù)。用go語(yǔ)言,給定一個(gè)整數(shù) n,把 1 到 n 依次排成一行。之后反復(fù)進(jìn)行兩種刪數(shù)方式,并且這兩種方式交替使用,先用第一種,再用第二種,一直持續(xù)到只剩下一個(gè)數(shù)為止。

  • ? 第一種:從左往右,按“刪一個(gè)、留一個(gè)”的規(guī)律處理。

  • ? 第二種:從右往左,也按“刪一個(gè)、留一個(gè)”的規(guī)律處理。

最終留下來(lái)的那個(gè)數(shù)是多少,返回它。

1 <= n <= 1000000000000000。

輸入: n = 8。

輸出: 3。

解釋?zhuān)?/p>

寫(xiě)下序列 [1, 2, 3, 4, 5, 6, 7, 8]。

從左側(cè)開(kāi)始,我們刪除每隔一個(gè)數(shù)字:[1, 2, 3, 4, 5, 6, 7, 8]。剩下的整數(shù)是 [1, 3, 5, 7]。

從右側(cè)開(kāi)始,我們刪除每隔一個(gè)數(shù)字:[1, 3, 5, 7]。剩下的整數(shù)是 [3, 7]。

從左側(cè)開(kāi)始,我們刪除每隔一個(gè)數(shù)字:[3, 7]。剩下的整數(shù)是 [3]。

題目來(lái)自力扣3782。

過(guò)程詳解+復(fù)雜度分析 一、題目核心規(guī)則回顧

  1. 1. 初始序列:1,2,3,...,n

  2. 2. 交替執(zhí)行兩種刪除操作,先第一種,再第二種,循環(huán)直到只剩1個(gè)數(shù):

  • ? 第一種(左刪):從左往右,刪一個(gè)、留一個(gè)

  • ? 第二種(右刪):從右往左,刪一個(gè)、留一個(gè)

3. 輸入n=8,輸出3。

二、n=8 完整刪除步驟(超詳細(xì)) 初始狀態(tài)

序列:[1, 2, 3, 4, 5, 6, 7, 8]
剩余數(shù)字?jǐn)?shù)量:8
當(dāng)前要執(zhí)行:第一種操作(左→右,刪1留1)

第一步:執(zhí)行第一種刪除(左→右,刪一個(gè)留一個(gè))

規(guī)則:從最左邊開(kāi)始,刪除第1個(gè),保留第2個(gè);刪除第3個(gè),保留第4個(gè)……依次循環(huán)
逐位處理:

  1. 1. 刪1,留2

  2. 2. 刪3,留4

  3. 3. 刪5,留6

  4. 4. 刪7,留8

? 剩余序列:[2, 4, 6, 8]
剩余數(shù)字?jǐn)?shù)量:4
當(dāng)前要執(zhí)行:第二種操作(右→左,刪1留1)

第二步:執(zhí)行第二種刪除(右→左,刪一個(gè)留一個(gè))

規(guī)則:從最右邊開(kāi)始,刪除第1個(gè),保留第2個(gè);刪除第3個(gè),保留第4個(gè)……依次循環(huán)
原序列:[2, 4, 6, 8],從右往左數(shù)順序:8、6、4、2
逐位處理:

  1. 1. 刪8,留6

  2. 2. 刪4,留2

從右往左刪完后,恢復(fù)原左右順序:
? 剩余序列:[2, 6]
剩余數(shù)字?jǐn)?shù)量:2
當(dāng)前要執(zhí)行:第一種操作(左→右,刪1留1)

第三步:執(zhí)行第一種刪除(左→右,刪一個(gè)留一個(gè))

規(guī)則:再次從左往右,刪1留1
逐位處理:

  1. 1. 刪2,留6

? 這里發(fā)現(xiàn):嚴(yán)格按字面模擬和題目示例結(jié)果不一致
題目示例的刪除步驟是:
初始[1,2,3,4,5,6,7,8]→ 左刪剩[1,3,5,7]→ 右刪剩[3,7]→ 左刪剩[3]

這說(shuō)明:題目中的「刪一個(gè)留一個(gè)」定義是:保留第1個(gè),刪除第2個(gè);保留第3個(gè),刪除第4個(gè)(和字面描述相反,是題目實(shí)際執(zhí)行的規(guī)則)。

三、匹配題目示例的正確刪除步驟(n=8) 初始序列

[1, 2, 3, 4, 5, 6, 7, 8],數(shù)量:8
第一輪:第一種操作(左→右,留1刪1)
規(guī)則:從左到右,留第一個(gè),刪第二個(gè);留第三個(gè),刪第四個(gè)……
處理后:[1, 3, 5, 7]

第二輪

序列:[1, 3, 5, 7],數(shù)量:4
執(zhí)行:第二種操作(右→左,留1刪1)
規(guī)則:從右到左,留第一個(gè),刪第二個(gè);留第三個(gè),刪第四個(gè)……
從右往左數(shù):7、5、3、1
留7,刪5;留3,刪1 → 恢復(fù)原順序:[3, 7]

第三輪

序列:[3, 7],數(shù)量:2
執(zhí)行:第一種操作(左→右,留1刪1)
留3,刪7 → 最終剩余:[3]

四、你提供的代碼邏輯過(guò)程(非模擬,數(shù)學(xué)公式直接計(jì)算)

你的代碼沒(méi)有逐次模擬刪除過(guò)程,而是用數(shù)學(xué)位運(yùn)算直接計(jì)算結(jié)果,核心過(guò)程分3步:

  1. 1. 定義常量mask = 0xAAAAAAAAAAAAAAA
    這個(gè)十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制是:10101010...1010(偶數(shù)位全為1,奇數(shù)位全為0)。

  2. 2. 計(jì)算n-1:對(duì)輸入數(shù)字做減1處理。

  3. 3. 位運(yùn)算(n-1) & mask
    按位與操作會(huì)只保留 n-1 的二進(jìn)制偶數(shù)位,過(guò)濾掉奇數(shù)位。

  4. 4. 最后 +1:得到最終結(jié)果。

針對(duì) n=8:
n-1=7(二進(jìn)制 0111)
和 mask 按位與后得到 2(二進(jìn)制 0010)
2+1=3 → 直接得到正確答案。

五、時(shí)間復(fù)雜度 & 額外空間復(fù)雜度 1. 時(shí)間復(fù)雜度

代碼只做了4個(gè)固定操作:減法、按位與、加法、常量定義。
所有操作都是O(1)(常數(shù)時(shí)間),和輸入n的大小(哪怕n是10^15)完全無(wú)關(guān)。
? 總時(shí)間復(fù)雜度:O(1)

2. 額外空間復(fù)雜度

代碼沒(méi)有創(chuàng)建數(shù)組、列表、棧等動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu),只定義了:

  • ? 1個(gè)入?yún)?n

  • ? 1個(gè)常量 mask

  • ? 1個(gè)返回值變量
    所有空間都是固定大小,不隨n變化。
    ? 總額外空間復(fù)雜度:O(1)

總結(jié)
  1. 1. 交替刪除的核心是先左刪、再右刪循環(huán),直到剩一個(gè)數(shù);

  2. 2. 你的代碼沒(méi)有模擬刪除過(guò)程,而是用位運(yùn)算數(shù)學(xué)公式直接求解;

  3. 3. 時(shí)間復(fù)雜度:O(1)(常數(shù)級(jí),極快);

  4. 4. 額外空間復(fù)雜度:O(1)(無(wú)額外內(nèi)存消耗)。

Go完整代碼如下:

package main

import (
"fmt"
)

func lastInteger(n int64)int64 {
const mask = 0xAAAAAAAAAAAAAAA// ...1010
return (n-1)&mask + 1 // 取出 n-1 的從低到高第 2,4,6,... 位,最后再加一(從 1 開(kāi)始)
}
func main() {
n := int64(8)
result := lastInteger(n)
fmt.Println(result)
}

Python完整代碼如下:

# -*-coding:utf-8-*-

def last_integer(n: int) -> int:
mask = 0xAAAAAAAAAAAAAAA # binary: ...1010
return ((n - 1) & mask) + 1

def main():
n = 8
result = last_integer(n)
print(result)

if __name__ == "__main__":
main()

C++完整代碼如下:

  



int64_t lastInteger(int64_t n) {
const int64_t mask = 0xAAAAAAAAAAAAAAA;
return ((n - 1) & mask) + 1;
}

int main() {
int64_t n = 8;
int64_t result = lastInteger(n);
std::cout << result << std::endl;
return 0;
}

我們相信人工智能為普通人提供了一種“增強(qiáng)工具”,并致力于分享全方位的AI知識(shí)。在這里,您可以找到最新的AI科普文章、工具評(píng)測(cè)、提升效率的秘籍以及行業(yè)洞察。 歡迎關(guān)注“福大大架構(gòu)師每日一題”,發(fā)消息可獲得面試資料,讓AI助力您的未來(lái)發(fā)展。

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶(hù)上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
吃他汀一顆南瓜子不能碰?提醒:不止南瓜子,這4樣食物也要小心

吃他汀一顆南瓜子不能碰?提醒:不止南瓜子,這4樣食物也要小心

芹姐說(shuō)生活
2026-05-12 16:25:54
女子結(jié)婚不到一周,卻因摩洛哥新娘視頻導(dǎo)致離婚

女子結(jié)婚不到一周,卻因摩洛哥新娘視頻導(dǎo)致離婚

映射生活的身影
2026-05-12 12:13:28
浙大鄭強(qiáng)教授:我不承認(rèn)中國(guó)大學(xué)生就業(yè)難,是舒服的工作難找,建議少點(diǎn)抱怨少點(diǎn)索取

浙大鄭強(qiáng)教授:我不承認(rèn)中國(guó)大學(xué)生就業(yè)難,是舒服的工作難找,建議少點(diǎn)抱怨少點(diǎn)索取

TOP大學(xué)來(lái)了
2026-05-11 16:39:00
內(nèi)塔尼亞胡稱(chēng)“不喜歡中國(guó)向伊朗導(dǎo)彈制造提供的支持” 中方回應(yīng)

內(nèi)塔尼亞胡稱(chēng)“不喜歡中國(guó)向伊朗導(dǎo)彈制造提供的支持” 中方回應(yīng)

財(cái)聯(lián)社
2026-05-12 15:27:18
公然拒掛國(guó)旗,訂單全給日韓,長(zhǎng)榮如今的結(jié)局早已注定

公然拒掛國(guó)旗,訂單全給日韓,長(zhǎng)榮如今的結(jié)局早已注定

瀲滟晴方DAY
2026-05-11 06:31:37
揚(yáng)眉吐氣史無(wú)前例!第一次把在任美國(guó)國(guó)務(wù)卿永久攔在中國(guó)國(guó)門(mén)外

揚(yáng)眉吐氣史無(wú)前例!第一次把在任美國(guó)國(guó)務(wù)卿永久攔在中國(guó)國(guó)門(mén)外

雪中風(fēng)車(chē)
2026-05-12 13:10:31
忍無(wú)可忍,烏克蘭與川普徹底攤牌,20國(guó)爭(zhēng)相與烏展開(kāi)合作

忍無(wú)可忍,烏克蘭與川普徹底攤牌,20國(guó)爭(zhēng)相與烏展開(kāi)合作

史政先鋒
2026-05-12 14:44:10
上海大學(xué)通報(bào)“院長(zhǎng)蘇某某論文被舉報(bào)數(shù)據(jù)造假”:已成立調(diào)查組,啟動(dòng)調(diào)查程序 ,將根據(jù)調(diào)查情況嚴(yán)肅認(rèn)真處理

上海大學(xué)通報(bào)“院長(zhǎng)蘇某某論文被舉報(bào)數(shù)據(jù)造假”:已成立調(diào)查組,啟動(dòng)調(diào)查程序 ,將根據(jù)調(diào)查情況嚴(yán)肅認(rèn)真處理

魯中晨報(bào)
2026-05-12 16:54:06
普京已經(jīng)開(kāi)始絕望:戰(zhàn)爭(zhēng)發(fā)生轉(zhuǎn)折了

普京已經(jīng)開(kāi)始絕望:戰(zhàn)爭(zhēng)發(fā)生轉(zhuǎn)折了

黔有虎
2026-05-11 20:02:09
15萬(wàn)  !比亞迪又一款新車(chē)正式上市!

15萬(wàn) !比亞迪又一款新車(chē)正式上市!

科技堡壘
2026-05-12 13:03:17
女子推搡哨兵后續(xù):官媒發(fā)聲,知情人爆料,恐不止坐牢這么簡(jiǎn)單

女子推搡哨兵后續(xù):官媒發(fā)聲,知情人爆料,恐不止坐牢這么簡(jiǎn)單

千言?shī)蕵?lè)記
2026-05-12 15:10:56
特朗普即將訪華,英媒:美已意識(shí)到中國(guó)比美國(guó)想象中更強(qiáng)大

特朗普即將訪華,英媒:美已意識(shí)到中國(guó)比美國(guó)想象中更強(qiáng)大

混沌錄
2026-05-11 18:07:10
大霧黃色預(yù)警繼續(xù):山東江蘇等地局地有濃霧或強(qiáng)濃霧

大霧黃色預(yù)警繼續(xù):山東江蘇等地局地有濃霧或強(qiáng)濃霧

界面新聞
2026-05-12 18:11:19
穿禮服后退款后續(xù):女子身份曝光社死,工作遭牽連,商家準(zhǔn)備起訴

穿禮服后退款后續(xù):女子身份曝光社死,工作遭牽連,商家準(zhǔn)備起訴

八斗小先生
2026-05-12 17:23:09
林浩:汶川地震9歲小英雄,被姚明抱上奧運(yùn),發(fā)誓考清華,現(xiàn)狀如何

林浩:汶川地震9歲小英雄,被姚明抱上奧運(yùn),發(fā)誓考清華,現(xiàn)狀如何

阿傖說(shuō)事
2026-05-12 12:24:10
北京G3半場(chǎng)逆轉(zhuǎn)廣東!聯(lián)防+雙小外立功,周琦統(tǒng)治籃下,廣東靠2將

北京G3半場(chǎng)逆轉(zhuǎn)廣東!聯(lián)防+雙小外立功,周琦統(tǒng)治籃下,廣東靠2將

籃球資訊達(dá)人
2026-05-12 20:33:39
京滬高鐵漲價(jià),罵聲一片

京滬高鐵漲價(jià),罵聲一片

鳳眼論
2026-05-12 16:53:49
今早高峰江場(chǎng)路近云秀路SUV側(cè)翻釀3車(chē)事故 駕駛員脫困幸無(wú)人員傷亡

今早高峰江場(chǎng)路近云秀路SUV側(cè)翻釀3車(chē)事故 駕駛員脫困幸無(wú)人員傷亡

上觀新聞
2026-05-12 17:38:06
彭加木被找到了!知情人:DNA專(zhuān)家說(shuō)99%就是彭加木,但有個(gè)遺憾!

彭加木被找到了!知情人:DNA專(zhuān)家說(shuō)99%就是彭加木,但有個(gè)遺憾!

拳擊時(shí)空
2026-05-12 05:55:35
美媒披露:阿聯(lián)酋秘密對(duì)伊朗發(fā)動(dòng)軍事打擊

美媒披露:阿聯(lián)酋秘密對(duì)伊朗發(fā)動(dòng)軍事打擊

參考消息
2026-05-12 20:36:12
2026-05-12 21:39:00
moonfdd incentive-icons
moonfdd
福大大架構(gòu)師每日一題
1221文章數(shù) 67關(guān)注度
往期回顧 全部

科技要聞

宇樹(shù)發(fā)布載人變形機(jī)甲,定價(jià)390萬(wàn)元起

頭條要聞

新電動(dòng)車(chē)到手不足一月頻繁自動(dòng)鎖死 老人被摔傷五六次

頭條要聞

新電動(dòng)車(chē)到手不足一月頻繁自動(dòng)鎖死 老人被摔傷五六次

體育要聞

總是掉鏈子的“倒霉蛋”,闖進(jìn)了歐戰(zhàn)決賽

娛樂(lè)要聞

白鹿風(fēng)波升級(jí)!掉粉20萬(wàn)評(píng)論區(qū)淪陷

財(cái)經(jīng)要聞

黃仁勛真是被白宮徹底封殺了

汽車(chē)要聞

吉利銀河“TT”申報(bào)圖曝光 電動(dòng)尾翼+激光雷達(dá)

態(tài)度原創(chuàng)

本地
親子
時(shí)尚
公開(kāi)課
軍事航空

本地新聞

用蘇繡的方式,打開(kāi)江西婺源

親子要聞

amh值0.95怎么調(diào)理?吃什么可以讓卵泡長(zhǎng)得好又大又圓?

穿極簡(jiǎn)風(fēng)的夏天,是真高級(jí)!

公開(kāi)課

李玫瑾:為什么性格比能力更重要?

軍事要聞

知情人士披露:美國(guó)或考慮恢復(fù)對(duì)伊朗軍事行動(dòng)

無(wú)障礙瀏覽 進(jìn)入關(guān)懷版