전체 글

공부, 일상
프로그래머스

나머지가 1이 되는 수 찾기 스위프트(Swift)

오늘은 전에 풀었던 문제의 재탕이다. 왜 이런 쓸데없는 짓을 하냐고 할 수도 있지만 나름 이유가 있었다. 추후, 따로 글을 작성해보겠다.. 문제 풀이 가장 앞에서 말했듯이 이미 코틀린으로 한 번 풀었던 문제지만 그대로 Swift언어로 작성해보았다. 먼저, 기존에 쓰던 코틀린과 달리 for문을 사용할 때 조건식에 괄호가 필요없다. 게다가, 코틀린에서는 for문의 실행문이 1줄이라면 중괄호를 생략할 수 있었지만 Swift는 무조건 중괄호가 필요했다. 생각보단 언어가 어색하다. 그래도 React Native를 접해본 경험은 있어 어색하지 않으리라 생각했는데 React Native에 관심이 없어서 그랬는지.. 암튼 조금 친해질 시간이 필요한 것 같다.

프로그래머스

시저 암호 코틀린(Kotlin)

오늘 풀어본 문제는 보자마자 문자형을 바탕으로 해결하면 되겠다는 생각이 들었다. 문제 C언어를 배울 당시 아스키 코드에서 대문자는 65부터 90까지, 소문자는 97부터 122까지의 번호였다. 이와 유사하게 유니코드에서도 숫자는 약간 다르지만 대문자, 소문자끼리 연속된 번호를 사용 중이었다. 하지만, 위의 2줄은 사실 큰 의미가 없었다.. isUpperCase(), isLowerCase() 메소드로 문자 하나가 대문자인지 소문자인지 구별할 수 있기 때문이다. 풀이 리턴될 answer 변수에 주어진 s의 0번 인덱스부터 각 문자의 대소문자 여부를 검사하고 n만큼 민 문자를 더해주었다. 그리고, 만약 문자에 띄어쓰기가 나오면 answer 변수에도 똑같이 띄어쓰기를 더해주었다.

프로그래머스

정수 내림차순으로 배치하기 코틀린(Kotlin)

오늘은 정렬 기능을 사용해야하는 문제였다. 문제 이전 문제들을 풀때 사용했던 방식을 가져와 일단 n을 MutableList에 하나씩 각 자리의 수를 추가해주었다. 그렇게 완성된 MutableList를 내림차순으로 정렬하려고 찾아보았더니 먼저 sort() 메소드를 통해 오름차순으로 정렬하고 reverse() 메소드로 역순 정렬을 할 수 있었다. 이렇게 내림차순으로 완성한 MutableList를 비어있는 String 변수에 0번 인덱스부터 차례대로 추가해주었고 이를 Long타입으로 변환하여 리턴될 answer 변수에 대입해주었다. 풀이 println 주석은 만든 MutableList가 내림차순까지 정렬이 되었는지 보기 위해 작성해보았다.

BonusTrack02.dev
BonusTrack02.dev