앱등개발자IOS

고정 헤더 영역

글 제목

메뉴 레이어

앱등개발자IOS

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (280)
    • 포트폴리오 (0)
    • C알고리즘 (43)
    • Python알고리즘 (57)
    • Swift알고리즘 (132)
    • IOS (3)
    • Swift언어 (9)
    • Lua 언어 (2)
    • Objective-C 언어 (1)
    • Kotlin언어 (0)
    • rxSwift (1)
    • Swift 지식(CS) (1)
    • Swift for Coding Interview (4)
    • Clean Software Architecture (0)
    • Design Pattern with Java & .. (3)
    • ML&DL (7)
    • 데이터베이스(DB) System Concepts (3)

검색 레이어

앱등개발자IOS

검색 영역

컨텐츠 검색

전체 글

  • 백준 1644: 소수의 연속합 (Swift) 풀이 2

    2022.08.13 by 앱등개발자IOS

  • 2021 KAKAO BLIND RECRUITMENT: 신규 아이디 추천 (Swift)

    2022.06.22 by 앱등개발자IOS

  • 2019 카카오 개발자 겨울 인턴십 : 크레인 인형뽑기 게임 (Swift)

    2022.06.22 by 앱등개발자IOS

  • 2019 KAKAO BLIND RECRUITMENT : 실패율 (Swift)

    2022.06.22 by 앱등개발자IOS

  • 프로그래머스 코딩테스트 연습문제 lv2: 가장 큰 정사각형 찾기 (Swift)

    2022.06.21 by 앱등개발자IOS

  • 2020 카카오 인턴십 : 키패드 누르기 (Swift)

    2022.06.18 by 앱등개발자IOS

  • 2021 카카오 채용연계형 인턴십 : 숫자 문자열과 영단어

    2022.06.18 by 앱등개발자IOS

  • 2021 Dev-Matching 웹 백엔드 : 로또의 최고 순위와 최저순위 (Swift)

    2022.06.18 by 앱등개발자IOS

백준 1644: 소수의 연속합 (Swift) 풀이 2

몇 달 전에 풀이했던 문제이지만, 다시 한 번 풀어보며 새롭게 작성한 코드가 있어 이 글을 작성하게 되었다. 크게 다른 점은 없다. 이전 풀이에서는 is_prime 배열에 각 숫자가 소수(prime)인지 아닌지를 Bool 형태로 판별하면서 바로바로 prime number만 모아놓을 배열에 append해주었다. 하지만 여기서는 소수 판별만 단독으로 진행한 후, 1. filter고차함수를 사용하여 is_prime값이 true, 즉 소수인 숫자들만 걸러내어 새로운 배열 prime을 생성하였다. 2. Swift의 반복문 for i in a ... b 혹은 for i in a .. b인 경우 fatal error를 일으킨다. 따라서 a > b인 경우 오류를 뱉지 않고, 실행 없이 지나가주는 stri..

Swift알고리즘 2022. 8. 13. 16:09

2021 KAKAO BLIND RECRUITMENT: 신규 아이디 추천 (Swift)

아래와 같은 내용을 "구현"하면 되는 문제이다. python으로는 이정도까지 까다롭지 않았는데, Swift로는 확실히 아직 익숙지 않고, 코드도 어쩔 수 없이 더 길다보니 시간이 오래 걸렸다. 헬갈렸거나, 아직 익숙하지 않았던 Swift표현들 정리: 1. for i in stride(from: 시작점, to: 끝점, by: 스트라이드 값){ } 2. arr.remove(at: 인덱스Int ) 3. s[String.Index(utf16Offset: 1, in: s)] 의 type은 Character이다. 4. 문자열을 배열로 바꾸기 => var s: [String] = s.split(separator: "").map{String($0)}으로 처음에 작성했었지만, s.map{String($0)}이 맞았다. ..

Swift알고리즘 2022. 6. 22. 16:57

2019 카카오 개발자 겨울 인턴십 : 크레인 인형뽑기 게임 (Swift)

2차원 배열에서 진행하는 수많은 알고리즘 문제 중, 신선하고 재미있었던 문제였다. 먼저 각 vertical에서 인형이 몇 번째 칸까지 쌓여있는지, 그 인덱스를 1차원 Int배열에 저장해두었다. (코드의 8 ~ 16번 줄) 이후, moves 배열을 하나씩 돌며, - 뽑을 인형이 있는지 확인 -뽑을 인형이 있다면, stack에 인형이 있고, 맨 위에 쌓인 인형과 같은지 확인 후 => 터트리고 result += 2, stack에서 pop - 인형을 터뜨릴 수 없다면, ( stack에 인형이 없었거나, 맨 위의 인형과 현재 뽑은 인형이 다른 경우) 쌓아 올림 -인형을 뽑았으니, 해당 vertical의 doll_top을 +1해준다.

Swift알고리즘 2022. 6. 22. 15:16

2019 KAKAO BLIND RECRUITMENT : 실패율 (Swift)

생각보다 구현할 것이 많았던 문제이다. 먼저, stages 배열을 돌며 각 숫자가 몇개인지 Count하여 count_arr 배열에 저장해놓는다 ( 1번 Idx에는 1이 몇 개 들어있었는지, n번 인덱스에는 n이 몇개 들어있었는지, 즉 해당 stage에 몇 명의 플레이어가 머물러있는지 저장) 전체 플레이어 수를 rest라는 변수에 저장해놓고, arr의 원소를 빼가며 각 stage의 실패율을구하고, (실패율, 스테이지 번호) 의 튜플 형태로 arr 배열에 저장한다. 이를 실패율이 큰 순으로 정렬하고, 스테이지 번호만 result배열에 따로 빼 return한다.

Swift알고리즘 2022. 6. 22. 14:40

프로그래머스 코딩테스트 연습문제 lv2: 가장 큰 정사각형 찾기 (Swift)

생각보다 생각을 해야하는 문제였다! 풀이: (1, 1)위치에서부터 탐색을 하며, 내 기준 ( 위, 왼쪽, 왼쪽위 ) 총 세 칸을 확인하고, 그들 중 최솟값이 1 이상인 경우에 그 값을 현재 내 칸에 더해준다. 1 1 1 1 과 같은 경우에는 1 1 1 2 가 될 것이다. 즉 한 변 길이가 2인 정사각형이 되었다라는 뜻! 2 3 2 1 인 경우에는 어떻게 될까? 이 경우는 현재 칸인 1에 주변 세 블록 중 최솟값인 2를 더해 3이 되어야하고, 실제로도 노란색으로 칠한 3*3 크기의 정사각형이 존재함을 확인할 수 있다! 또 한가지 주의해야할 점은 1. 모든 칸이 0으로 채워져있을 때, 0을 return해야하고, 2. 1이 하나라도 존재할 경우, answer를 일단 1로 갱신해주어야한다. 이 두가지만 처리해준..

Swift알고리즘 2022. 6. 21. 02:23

2020 카카오 인턴십 : 키패드 누르기 (Swift)

생각보다 구현하는데 많은 자료형으로 데이터를 만들어줘야하는 문제였다. 문제의 해결법을 생각해내는 것은 어렵지 않은 편의 문제였다. 문제 알고리즘을 간단하게 설명하자면, - 먼저 typealias로 Point라는 튜플을 만들어줬다. 좌표를 나타내는 원시(?) 구조체 와 같은 친구라고 생각하면 된다.. numbers의 원소를 하나하나 for문으로 접근하면서, (1)- 1,4,7 / 3,6,9와 같이 눌러야 할 손이 정해진 버튼이라면 결과 문자열인 result에 "L"혹은 "R"을 이어붙이고, 다음 판단을 위해 마지막으로 위치한 왼손 혹은 오른손의 위치를 now_left/now_right에 갱신해준다. (2) - 2,5,8,0 중 하나, 즉 왼손/오른손 어떤 손으로 눌러야할지 판단이 필요한 위치라면 dist(..

Swift알고리즘 2022. 6. 18. 21:50

2021 카카오 채용연계형 인턴십 : 숫자 문자열과 영단어

python으로 처음 풀이했을 때는, isalpha()함수를 사용하여, 영어 문자가 나타나면 그 문자가 "one"인지, "two"... 어떤 것인지 판단하고 이를 숫자로 바꾸어 result문자열에 append하는 식으로 풀이했었다. 문제는 없지만, replace("바뀔 문자열", "바꿀 문자열")이라는 편리한 함수를 사용하면 10줄 내외로 구현이 가능한 것을 보고 경악을 금치 못했다. Swift에도 replacingOccurrences()라는 함수가 있었고, 10줄 내외로 구현할 수 있었다. 간편하게 Dictionary로 "바뀔 문자열"과 "바꿀 문자열"을 마련해놓고 시작했다!

Swift알고리즘 2022. 6. 18. 21:13

2021 Dev-Matching 웹 백엔드 : 로또의 최고 순위와 최저순위 (Swift)

간단한 구현문제이다. 맞춘 숫자 갯수에 따른 순위를 배열로 만들어놓고, 0의 갯수를 따로 count해주어, 0이 맞춘 숫자로 간주될 때와, 못 맞춘 숫자로 간주될 때를 나누어 구해주면 된다. 새로운 풀이

Swift알고리즘 2022. 6. 18. 17:56

추가 정보

인기글

최신글

페이징

이전
1 ··· 25 26 27 28 29 30 31 ··· 35
다음
TISTORY
앱등개발자IOS © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바