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 |
Tags
- Recoil
- Can't resolve
- augmentedDevice
- custom printing
- html
- 티스토리 성능
- device in use
- nextjs
- silent printing
- ELECTRON
- adb connect
- electron-packager
- Failed to compiled
- npm package
- Git
- camera permission
- Each child in a list should have a unique "key" prop.
- camera access
- rolldown
- github 100mb
- animation
- 이미지 데이터 타입
- dvh
- adb pair
- github pdf
- github lfs
- react-native
- ffi-napi
- react-native-dotenv
- vercel git lfs
Archives
- Today
- Total
Bleeding edge
[프로그래머스] 삼각 달팽이 - 자바스크립트 본문
https://programmers.co.kr/learn/courses/30/lessons/68645
개인적으로, 이 문제는, 내가 코딩테스트를 하면서 수정하거나 신경써야할걸 많이 알려준 문제라고 생각한다. 우선 이문제는 한 4회정도..? (1회차당 하루다) 시도해봤었던 문제인데, 다풀렸다 했을때 항상 error를 못잡았던 기억이 있다. 지금와서 생각해보면 문제풀이에 부족했었던걸 정리해보았다.
1. typeof 문제, 문제풀이에서 Numer와 String가 삽입되거나 합쳐질때, 전환을 잘신경 못쓰는거 같다(그래도 많이 좋아졌지만)
2. x, y graph 문제, x, y 변수 두개가 있는 그래프의 경우에는, x, y를 움직이는데 있어서, out of range의 케이스에서 error가 발생하는데, 오늘 와서 보니 out of range를 막는 조건을 잘 막는다했는데 error가 생기는 경우에는, 조건문을 두개로 나눠서 하니 좀 더 잘 되는거 같았다. 그러니 줄이 늘어나는 것보다 쪼갤때는 쪼개야 한다는 생각이 들었다.
아래는 문제 풀이이다.
function solution(n) {
// var answer = [];
// return answer;
let max = n*(n+1)/2
let graph = []
for(let i =0;i<n;i++){
let list = []
for(let j=0;j<n;j++){
list.push(0)
}
graph.push(list)
}
let x=0;
let y=0;
let dir = [[0,1], [1,0], [-1, -1]];
let d = 0
for(let i=1;i<max+1;i++){
graph[y][x] =i
if((y===n-1&&x===0)||(x===n-1&&y===n-1)){
if(d==2){
d = 0
}else{
d++
}
}
if(graph[Number(y)+ Number(dir[d][1])][Number(x)+ Number(dir[d][0])] !==0){
if(d==2){
d = 0
}else{
d++
}
}
x = Number(x)+ Number(dir[d][0])
y =Number(y)+ Number(dir[d][1])
}
const regex = /(,0)/g;
return graph.join(',').replace(regex, '').split(',').map((v)=>Number(v))
}
'코딩테스트 공부' 카테고리의 다른 글
[프로그래머스] k진수에서 소수 개수 구하기 - 자바스크립트 (0) | 2022.04.25 |
---|---|
[프로그래머스] 행렬의 곱셈 - 자바스크립트 (0) | 2022.04.25 |
[프로그래머스] - 124 나라의 숫자 (0) | 2022.04.19 |
[프로그래머스] 괄호 회전하기 - 자바스크립트 (0) | 2022.04.17 |
[프로그래머스] 땅따먹기 - 자바스크립트 (0) | 2022.04.17 |