File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change 1+ /*
2+ ํ์ด :
3+ ๋ง์ง๋ง ์ธ๋ฑ์ค๋ฅผ ์์์ ์ผ๋ก ํ๋ ๋ณ์ lastReachable ์ ์ธ
4+ ๋ง์ง๋ง ์ธ๋ฑ์ค์ ๋๋ฌํ ์ ์๋ ๊ฐ์ฅ ์์ ์ธ๋ฑ์ค๋ฅผ ์ ์ฅ
5+ ์์์ ๋ด๋ ค์ค๋ฉด์ lastReachable ๋์ด์ ์ ํํด์ ๋ฟ์ ์ ์๋ ๊ฐ์ฅ ์์ ๋์ด๋ฅผ ์๋ก์ด lastReachable๋ก ์
๋ฐ์ดํธ
6+ ๋ฐ๋ณต๋ฌธ์ด ๋๋๊ณ lastReachable == 0์ ๋ฆฌํดํ๋ค
7+
8+ nums์ ๊ธธ์ด : N
9+
10+ TC : O(N)
11+ for๋ฌธ ๋ฐ๋ณต 1ํ
12+
13+ SC : O(1)
14+ ๋ณ์ lastReachable ์ธ์ ์ถ๊ฐ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ์์
15+ */
16+
17+ #include < vector>
18+ using namespace std ;
19+
20+ class Solution {
21+ public:
22+ bool canJump (vector<int >& nums) {
23+ int lastReachable = nums.size () - 1 ;
24+
25+ for (int i = nums.size () - 2 ; i >= 0 ; i--) {
26+ if (i + nums[i] >= lastReachable)
27+ lastReachable = i;
28+ }
29+
30+ return lastReachable == 0 ;
31+ }
32+ };
You canโt perform that action at this time.
0 commit comments