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
                            
                        
                          
                          - html
- custom printing
- react-native-dotenv
- Each child in a list should have a unique "key" prop.
- rolldown
- Failed to compiled
- electron-packager
- camera access
- device in use
- Recoil
- npm package
- adb connect
- github 100mb
- github lfs
- ELECTRON
- vercel git lfs
- 티스토리 성능
- silent printing
- react-native
- 이미지 데이터 타입
- github pdf
- Can't resolve
- dvh
- camera permission
- adb pair
- ffi-napi
- animation
- Git
- augmentedDevice
- nextjs
                            Archives
                            
                        
                          
                          - Today
- Total
Bleeding edge
[프로그래머스] - 124 나라의 숫자 본문
https://programmers.co.kr/learn/courses/30/lessons/12899#
코딩테스트 연습 - 124 나라의 숫자
programmers.co.kr
2단계의 앞부분에 위치하고 있어서 여러번 시도하고 여러번 실패한 문제. 다른분의 풀이를 보니 다른분의 풀이를 보는게 더 나은거 같다.
function solution(n) {
    let answer = []
   n = n.toString('3');
   n = n.split('');
   while(n.length!==0){
       if(n[n.length-1]!=='0'){
        answer.push(n[n.length-1])
        n.pop();
       }else if(n[n.length-1]==='0'){
        answer.push('4')
       n.pop();
           for(let i=n.length-1;i>=0;i--){
               if(n[i]==='0'){
                   n[i] = '2'  
               }else if(n[i]==='2'){
                   n[i] ='1'
                   break;
               }else if(n[i]==='1'){
                   n[i]='0'
                   break;
               }
            }
           
       }
        if(n[0]==='0'){
            n.shift()
        }
    
   }
    answer = answer.reverse().join('')
    return answer
}음.. 내풀이의 요약은 3진법으로 바꾸고, 숫자를 하나씩 pop시키고 list에 모은다. pop시킬때 만일 pop 시킨 숫자가 0이라면 4를 대신에 넣고, 앞에있는 숫자에서 1을뺀다, 이때, 뺀 숫자가 0이라면 그 앞의 숫자에 1을 뺀다. 만일 0이 아니라면 break. 하고 리버스 시키고 join 시켰다. 다음번에 풀때는 다른사람의 풀이처럼 풀어봐야겠다
'코딩테스트 공부' 카테고리의 다른 글
| [프로그래머스] 행렬의 곱셈 - 자바스크립트 (0) | 2022.04.25 | 
|---|---|
| [프로그래머스] 삼각 달팽이 - 자바스크립트 (0) | 2022.04.20 | 
| [프로그래머스] 괄호 회전하기 - 자바스크립트 (0) | 2022.04.17 | 
| [프로그래머스] 땅따먹기 - 자바스크립트 (0) | 2022.04.17 | 
| [프로그래머스] 이진 변환 반복하기 - 자바스크립트 (0) | 2022.04.15 | 
