亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Leetcode 403 - Frog Jump(dp or bfs)

2019-11-14 10:04:02
字體:
來源:轉載
供稿:網友

題意

給定一個石頭的序列,青蛙從0開始跳,第一次只能跳一步,不能落入水中。

現在,假如我從上一個石頭跳到這個石頭是k步,那么,我們下一次只能跳k - 1或k或k + 1步,問:青蛙最后能否調到最后一個石頭上。

思路

算法1

爆搜,本來以為會T,但是實際上中間會有很多情況會落入水中,所以bfs能過。

算法2

dp,我們可以這樣考慮:我們當前在位置i,是從位置j經過k步到達位置i的。那么我們下一次能夠達到stonesi+kstonesi+k?1stonesi+k+1。

于是,我們的狀態表示為:d[i],從i之前的某一位置j經過k步跳過來的,那么,很明顯我們的d[i]有很多種情況,我們可以再加一維j表示從j經過d[i,j]步跳過來的,也可以用一個set來存我們經過多少步到i的。

即,我們定義我們的d[i]unordered_map<int, set<int>> pos,key為stones[i],value為跳到這個位置的所有可能步數集合。

那么,我們接下來需要做的就是:假設我們當前在位置i,我們取出pos[stones[i]]對應的集合tk。對于tk內的每一個步數k,那么我們下一次就可以走到的位置newpos為stones[i] + k或stones[i] + k - 1或stones[i] + k + 1。然后判斷newpos是否為一個石頭,如果是,那么我們就將可行的解加入pos即可。

最后,只需要判斷pos[stones[n - 1]].size()>0即可(即是否存在到終點的可行步數)

代碼

//algorithm 1#define PII pair<int, int>#define mp make_pairclass Solution {public: bool canCross(vector<int>& stones) { set<PII> vis; set<int> has; for (auto x : stones) has.insert(x); int ll = stones[stones.size() - 1]; queue<PII> q; q.push(mp(1, 1)); while (!q.empty()) { PII t = q.front(); q.pop(); if (t.first == ll) return true; if (vis.find(t) != vis.end()) continue; else vis.insert(t); int x = t.first, k = t.second; if (has.find(x) != has.end()) { if (x + k <= ll && has.find(x + k) != has.end()) q.push(mp(x + k, k)); if (x + k - 1 <= ll && has.find(x + k - 1) != has.end()) q.push(mp(x + k - 1, k - 1)); if (x + k + 1 <= ll && has.find(x + k + 1) != has.end()) q.push(mp(x + k + 1, k + 1)); } } return false; }};//algorithm 2class Solution {public: bool canCross(vector<int>& stones) { unordered_map<int, set<int>> pos; set<int> tmp; for (auto x : stones) pos[x] = tmp; for (int i = 0; i < stones.size(); i++) { set<int> sk = pos[stones[i]]; for (auto k : sk) { for (int step = k - 1; step <= k + 1; step++) { if (step > 0 && pos[stones[i] + step] != NULL) pos[stones[i] + step].insert(stones[i] + step); } } } return pos[stones.size() - 1].size() > 0; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久国产精品久久久久久久久久| 欧美二区乱c黑人| 在线亚洲国产精品网| 欧美高清自拍一区| 日本sm极度另类视频| 午夜精品蜜臀一区二区三区免费| 精品亚洲一区二区三区在线观看| 欧美日韩中文字幕在线| 992tv成人免费视频| 亚洲欧洲视频在线| 深夜精品寂寞黄网站在线观看| 精品人伦一区二区三区蜜桃网站| 久久久爽爽爽美女图片| 97在线视频免费播放| 91久久中文字幕| 精品一区电影国产| 亚洲国产精品久久91精品| 日韩电影免费在线观看中文字幕| 成人在线中文字幕| 欧美美女15p| 精品国产一区久久久| 国产一区深夜福利| 欧美激情xxxx| 久久精品一本久久99精品| 色与欲影视天天看综合网| 97久久超碰福利国产精品…| 日韩久久免费电影| 国产成人精品视频在线| 久久精品成人欧美大片古装| 国产中文字幕日韩| 精品福利在线看| 色综合久久中文字幕综合网小说| 成人中文字幕+乱码+中文字幕| 国产日韩欧美一二三区| 欧美成人午夜激情| 久久久久久尹人网香蕉| 国产一区二区三区丝袜| 亚洲国产高清高潮精品美女| 日韩欧美国产中文字幕| 久久久久久久爱| 91免费看片网站| 国产精品黄色影片导航在线观看| 久久久久久久久久久人体| 青青草成人在线| 日韩男女性生活视频| 亚洲大尺度美女在线| 亚洲电影av在线| 日本精品久久久久影院| 欧美高清视频在线| 亚洲石原莉奈一区二区在线观看| 九九九热精品免费视频观看网站| 欧美老女人性视频| 91超碰中文字幕久久精品| 日韩成人中文字幕在线观看| 久久99久久99精品免观看粉嫩| 亚洲91精品在线| 日韩影视在线观看| 国产乱肥老妇国产一区二| 亚洲福利影片在线| 伊人久久男人天堂| 欧美日韩在线观看视频小说| 亚洲欧美精品伊人久久| 亚洲999一在线观看www| 欧美成人在线免费视频| 欧美性资源免费| 欧美第一页在线| 成人激情黄色网| 91国内精品久久| 亚洲成色777777在线观看影院| 日韩最新在线视频| 最好看的2019的中文字幕视频| 国产精品成人va在线观看| 精品久久久久久久久国产字幕| 精品国产老师黑色丝袜高跟鞋| 久久精品最新地址| 亚洲sss综合天堂久久| 最近2019年手机中文字幕| 欧美电影在线观看完整版| 日韩成人在线观看| 91免费看片在线| 色偷偷综合社区| 欧美精品免费在线| 久久精品这里热有精品| 国内揄拍国内精品| 国产亚洲美女精品久久久| 欧美成人免费视频| 精品国模在线视频| 日韩成人中文字幕| 欧美日韩成人精品| 成人免费视频网| 日韩电视剧在线观看免费网站| 国产精品亚洲第一区| 国产成人aa精品一区在线播放| 亚洲自拍偷拍第一页| 国产精品视频自在线| 91在线免费看网站| 国产日韩欧美电影在线观看| 亚洲激情在线视频| 97超碰国产精品女人人人爽| 啊v视频在线一区二区三区| 深夜福利91大全| 日韩美女中文字幕| 91情侣偷在线精品国产| 久久在线精品视频| 97精品一区二区三区| 久久国产视频网站| 欧美日韩在线另类| 亚洲毛茸茸少妇高潮呻吟| 国产亚洲精品va在线观看| 亚洲综合在线做性| 国产在线拍偷自揄拍精品| 亚洲缚视频在线观看| 久久久久国产精品免费网站| 久久国产精彩视频| 欧美精品日韩三级| 九九九热精品免费视频观看网站| 日本一区二区三区在线播放| 奇米一区二区三区四区久久| 日本精品久久久| 日韩欧美国产激情| 日韩欧美在线免费| 久久综合伊人77777尤物| 精品视频在线观看日韩| 全亚洲最色的网站在线观看| 欧美性猛交99久久久久99按摩| 亚洲国产欧美精品| 国产一区二区激情| 久久精品99国产精品酒店日本| 久久久久久久一区二区三区| 欧美巨乳美女视频| 亚洲剧情一区二区| 精品国产一区二区三区久久久狼| 国产精品爱啪在线线免费观看| 日韩欧美一区二区在线| 国产成人在线亚洲欧美| 狠狠做深爱婷婷久久综合一区| 亚洲91av视频| 中文字幕日韩av综合精品| 欧美中文字幕精品| 九九热这里只有精品免费看| 国产亚洲视频中文字幕视频| 国产精品黄色影片导航在线观看| 亚洲成人网久久久| 欧美午夜xxx| 欧洲亚洲妇女av| 日韩精品在线免费观看视频| 日韩欧美成人免费视频| 欧美日韩成人在线观看| 国产精品美乳一区二区免费| 亚洲男人的天堂在线播放| 91在线精品视频| 国产日韩av在线播放| 日韩在线观看免费av| 欧美国产日韩一区二区在线观看| 亚洲自拍偷拍第一页| 成人免费自拍视频| 亚洲黄色av女优在线观看| xxav国产精品美女主播| 亚洲精品乱码久久久久久按摩观| 日韩专区中文字幕| 一区二区欧美日韩视频| 欧美专区国产专区| 久久91精品国产91久久跳| 亚洲视频在线观看|