꿈틀꿈틀 개발일기

20240105 / 그냥 하는 것

by jeongminy

 

 

 

몇일 새 공부하면서 느낀점이 있다.

모르겠다 모르겠다 해서 두려워하고 넘기고 외면하고 피하고 공부하지 않았던 적이 있다.

이해하지 못해서 따라서도 쳐보고 검색도 해보고 유투브를 찾아봐도 모르겠고,

아무리 아무리 ㅏㄴ얼ㄴㅇ,리잉ㄹ아무리 아무리

아무리ㅁㄴㅇ라이 아무리ㅣㅣㅣㅣㅣㅣㅣㅣㅣ암륀ㅁ아리알아무리ㅣㅣㅣㅣㅣㅣ 해도 모르겠고,

 

하지만

어느날엔가 갑자기,, 언젠가,, 이해가 되더라 라는 거다.....

아무리 들어도 모르는 것이었지만

어느 순간 가랑비에 옷젖듯 나에게 스며들어 왔나보다.

중요한건 그냥 하는 것 인 것 같다.

 

 

 

 

 

 

 

알고리즘 코드카타


알고리즘 문제 27, 28, 29 까지 총 3문제를 풀었다.

❓ 문제 27. 핸드폰 번호 가리기

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 
* 으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.


✔️ 제한사항

phone_number는 길이 4 이상, 20이하인 문자열입니다.


📝 내가 쓴 풀이
class Solution {
    fun solution(phone_number: String): String {
        var reversedNumber = phone_number.reversed()
        var hideNumber = ""
        
        for((idx, char) in reversedNumber.withIndex()){
            when(idx){
                in 0..3 -> hideNumber += char
                else -> hideNumber += "*"
            }
        }    
        return hideNumber.reversed()
    }
}


📝 다른 사람의 풀이

class Solution {
    fun solution(phone_number: String): String {
        var answer = ""
        for(c in phone_number.mapIndexed { index, c -> if(index >= phone_number.length - 4) c else '*' })
            answer += c
        return answer
    }
}

이 풀이를 보니 mapIndexed가 매우 유용하게 쓰이는 것 같다. 코드의 양도 줄어들고, 보기에도 뭔가 직관적이다.
자주 보고 나도 눈에 익어지면 익숙해지도록 사용해보고싶다! map~!!

🕵🏻 URL
https://school.programmers.co.kr/learn/courses/30/lessons/12948


❓ 문제 28. 없는 숫자 더하기

0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.

✔️ 제한사항

1 ≤ numbers의 길이 ≤ 9
0 ≤ numbers의 모든 원소 ≤ 9
numbers의 모든 원소는 서로 다릅니다.

📝 내가 쓴 풀이
class Solution {
    fun solution(numbers: IntArray): Int {
        var newNumbers = mutableListOf<Int>()
        var sum = 0
        
        for (i in 0..9){
            sum += i
        }        
        return sum - numbers.sum()            
        }
    }


🕵🏻 URL

https://school.programmers.co.kr/learn/courses/30/lessons/86051


❓ 문제 29. 제일 작은 수 제거하기

정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.

✔️ 제한사항

arr은 길이 1 이상인 배열입니다.
인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.


📝 내가 쓴 풀이
class Solution {
    fun solution(arr: IntArray): IntArray {
        var min = arr.minOrNull()
        var newArr = arr.filterNot{it==min}.toMutableList()
        
        if(newArr.isEmpty()){
            newArr.add(-1)
        }
        
        return newArr.toIntArray()
    }
}


🕵🏻 URL
https://school.programmers.co.kr/learn/courses/30/lessons/12935

 

 

 

SQL 코드카타


SQL코드카다 21번문제~30번 문제까지 총 10문제를 풀었다.

이름이 없는 동물의 아이디

조건에 맞는 회원수 구하기

중성화 여부 파악하기

카테고리 별 상품 개수 구하기

고양이와 개는 몇 마리 있을까

입양 시각 구하기(1)

진료과별 총 예약 횟수 출력하기

12세 이하인 여자 환자 목록 출력하기

인기있는 아이스크림

자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'📒 TIL - Today I Learned' 카테고리의 다른 글

20240108 / 뉴스피드 사전 회의  (0) 2024.01.08
20240107 / Spring 심화 복습  (0) 2024.01.07
20240104 / TIL  (0) 2024.01.04
20240103 / 하루에 조금씩 차근차근  (0) 2024.01.03
20240102 / Todolist 피드백  (0) 2024.01.02

블로그의 정보

꿈틀꿈틀 개발일기

jeongminy

활동하기