Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- silent printing
- ELECTRON
- camera access
- custom printing
- device in use
- npm package
- camera permission
- react-native-dotenv
- Git
- augmentedDevice
- github pdf
- github lfs
- Failed to compiled
- 이미지 데이터 타입
- Can't resolve
- ffi-napi
- adb pair
- animation
- Recoil
- dvh
- vercel git lfs
- nextjs
- react-native
- html
- rolldown
- github 100mb
- adb connect
- Each child in a list should have a unique "key" prop.
- 티스토리 성능
- electron-packager
Archives
- Today
- Total
Bleeding edge
[LeetCode] 118. Pascal's Triangle - 자바스크립트 0620 본문
https://leetcode.com/problems/pascals-triangle/
문제 풀이는 그림대로 풀이하면된다
1.모든 삼각형에 1을 처음에 넣는다
2. 위에 삼각형의 좌 우에 해당하는 칸을 더하면서 계속 내려간다!
단지 차이가 있다고 하면, 자바스크립트의 모양은 저렇게 삼각형은 아니기에 모양을 살짝 다른식으로 생각하면 풀이하기가 쉽다.
문제풀이
1. return 할 arr를 answer로 선언한다
const answer = []
2. answer에 주어진 numRows만큼 [ ]빈 정렬을 대입한다. 그리고 그 행렬의 index만큼 1을 push한다.
for (let i = 0; i < numRows; i++) {
answer.push([])
for (let j = 0; j < i + 1; j++) {
answer[i].push(1)
}
}
이제 숫자를 제외한 모양만큼의 모양이 나온다.
3. 우선, 0, 1같은 경우에는 위에 이야기 한대로 좌 우가 없기 때문에 더할 수가 없으니 2부터 인덱스를 시작해야한다. 우선 지금 우리가 넣어야할 인덱스를 순서대로 i , j라고한다면 본인보다 위에 위치한 행렬을 구해야하기 때문에 i-1, 그리고 본인의 위에서 좌우를 골라야 하기 때문에 j - 1 그리고 j를 루프에 넣어서 더한다.
for (let i = 2; i < answer.length; i++) {
for (let j = 1; j < answer[i].length - 1; j++) {
answer[i][j] = answer[i - 1][j - 1] + answer[i - 1][j]
}
}
전체 풀이
var generate = function (numRows) {
const answer = []
for (let i = 0; i < numRows; i++) {
answer.push([])
for (let j = 0; j < i + 1; j++) {
answer[i].push(1)
}
}
for (let i = 2; i < answer.length; i++) {
for (let j = 1; j < answer[i].length - 1; j++) {
answer[i][j] = answer[i - 1][j - 1] + answer[i - 1][j]
}
}
return answer
};
'코딩테스트 공부' 카테고리의 다른 글
[LeetCode] 1154. Day of the Year - 자바스크립트 0621 (0) | 2022.06.21 |
---|---|
[LeetCode] 2284. Sender With Largest Word Count - 자바스크립트 0620 (0) | 2022.06.20 |
[LeetCode] 66. Plus One - 자바스크립트 0620 (0) | 2022.06.20 |
[LeetCode] 1701. Average Waiting Time - 자바스크립트 0617 (0) | 2022.06.17 |
[LeetCode] Reverse Prefix of Word - 자바스크립트 0617 (0) | 2022.06.17 |