No.0020-CareerCup

問題描述

Given an MxN matrix, determine whether a path can be drawn through every node in the matrix such that the end node is next to the start node, and each node is only touched once.
給一個(gè)MxN的矩陣,問能不能找到一條一筆畫的路徑戒财,能不重復(fù)地通過每個(gè)節(jié)點(diǎn)而且開始和結(jié)束的點(diǎn)相鄰。

信息補(bǔ)全

好像沒什么需要詢問補(bǔ)充的堪置。

問題分析

1x1的時(shí)候因?yàn)闆]有結(jié)束點(diǎn),因此是不符合要求的。

暴力破解

完全不管三七二十一,就用程序來模擬。
那么首先是要選擇出發(fā)點(diǎn)吧蜀撑,有MxN種選擇粪摘。
然后是生成路徑椎咧,可以考慮BFS或者DFS向臀。
在無路可走的時(shí)候判斷一下是不是走完了芹彬,以及是不是和初始點(diǎn)相鄰会前。
此外還可以每一步判斷一下初始點(diǎn)周圍還有沒有位置好乐。
不過總的來說時(shí)間復(fù)雜度非常高蔚万。

觀察法

其實(shí)這個(gè)題更多是智力向或者數(shù)學(xué)向,觀察歸納會比較有效假夺。假設(shè)N>0.

  • 1xN
    這種情況,只有1x2是符合條件的已卷。但其實(shí)還是托了那個(gè)2的福梧田。
  • 2xN
    這種情況都符合。從第一排的第一個(gè)點(diǎn)往這一排末端走侧蘸,到頭拐個(gè)彎回來裁眯,就是U字形的路線。
  • 3xN
    考慮3x3讳癌,無論如何也無法做到穿稳。
  • 4xN
    考慮4x3描验,凹字形路線也是可以的匹摇。

觀察了這么多盐碱,其實(shí)可以看出一點(diǎn)規(guī)律了锣杂。
也就是說如果MN中有一個(gè)偶數(shù)吸奴,就可以符合骡尽。
為什么患亿?之前已經(jīng)知道對于2的情況使用U字形路線慌核,其實(shí)那是凹的特例娩怎。凹字折返回來要求就是偶數(shù)搔课。
考慮大于等于4的偶數(shù)情況,假設(shè)有N列截亦,N是偶數(shù)爬泥,然后從左上角出發(fā)向下,觸底之后折返崩瓤,到差一行的時(shí)候再往右一格再往下袍啡。
這個(gè)路線下是無視M的值的,因?yàn)椴挥绊憽?br> 假如MN都是奇數(shù)却桶,到最后一列是往下走境输,回不來蔗牡。
因此,差不多就能得到結(jié)論了:當(dāng)MN全部為奇數(shù)時(shí)嗅剖,返回否辩越。其他情況返回是。
從另一個(gè)角度來看信粮,題目要求的路線一定會經(jīng)過偶數(shù)個(gè)格子黔攒,因此MxN為奇數(shù)時(shí)不符合。
能不能證明那種路線一定會經(jīng)過偶數(shù)格子强缘?不會證明督惰。

代碼

總結(jié)

面試時(shí)要想證明結(jié)論的正確性,可能難度比較大旅掂,需要數(shù)學(xué)功底赏胚。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市商虐,隨后出現(xiàn)的幾起案子觉阅,更是在濱河造成了極大的恐慌,老刑警劉巖秘车,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件留拾,死亡現(xiàn)場離奇詭異,居然都是意外死亡鲫尊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進(jìn)店門沦偎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來疫向,“玉大人,你說我怎么就攤上這事豪嚎∩ν眨” “怎么了?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵侈询,是天一觀的道長舌涨。 經(jīng)常有香客問我,道長扔字,這世上最難降的妖魔是什么囊嘉? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮革为,結(jié)果婚禮上扭粱,老公的妹妹穿的比我還像新娘。我一直安慰自己震檩,他們只是感情好琢蛤,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布蜓堕。 她就那樣靜靜地躺著,像睡著了一般博其。 火紅的嫁衣襯著肌膚如雪套才。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天慕淡,我揣著相機(jī)與錄音背伴,去河邊找鬼。 笑死儡率,一個(gè)胖子當(dāng)著我的面吹牛挂据,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播儿普,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼崎逃,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了眉孩?” 一聲冷哼從身側(cè)響起个绍,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎浪汪,沒想到半個(gè)月后巴柿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡死遭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年广恢,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片呀潭。...
    茶點(diǎn)故事閱讀 40,675評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡钉迷,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出钠署,到底是詐尸還是另有隱情糠聪,我是刑警寧澤,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布谐鼎,位于F島的核電站舰蟆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏狸棍。R本人自食惡果不足惜身害,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望隔缀。 院中可真熱鬧题造,春花似錦、人聲如沸猾瘸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至淮悼,卻和暖如春咐低,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背袜腥。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工见擦, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人羹令。 一個(gè)月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓鲤屡,卻偏偏與公主長得像,于是被迫代替她去往敵國和親福侈。 傳聞我的和親對象是個(gè)殘疾皇子酒来,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容