개발차
[프로그래머스] 키패드 누르기
programmers.co.kr/learn/courses/30/lessons/67256?language=swift 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 키패드를 왼손/오른손으로 누를지 경우에 따라 분류해주면 되는 문제. 키패드를 좌표로 보고 현재 왼손, 오른손 위치와 누르고자 하는 버튼의 좌표 거리를 비교하여 누를 수 있도록 했다. 그리 어려운 문제는 아니기에 바로 코드로 가보자! impo..
[프로그래머스] 배달 & 합승 택시 요금 (with 플로이드 와샬)
https://programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7..
[Network] 컴퓨터 네트워크 기본 1
1강을 듣고 정리해본 강의 노트. 간단하게 키웓드 중심으로 정리. -------------------------- 네트워크의 라우터 = 메시지를 전달받아서 목적지로 공유주는 역할 네트워크 엣지(Edge) : 웹 브라우저, 서버등 다 여기서 동작 네트워크 코어(Core) : 데이터 전송 (종단 시스템들을 연결해주는 역할) TCP는 3가지 특성이 있음 reliable : 신뢰성 있는 (오류가 없는) 채널에서 신뢰성 있는 데이터를 전달 flow control : receiver가 받을 수 있는 속도에 맞게 전달해야함. congestion control : 네트워크가 혼잡할 때 sender는 속도를 낮춰 송신해줘야한다. (= 네트워크의 능력치만큼 보내야 한다) UDP는 TCP에 비해 아무것도 안해줌 근데 왜 쓸..
[Network] 네트워크 Intro.
네트워크는 아래의 강의로 첫 걸음을 시작할 예정. www.kocw.net/home/cview.do?mty=p&kemId=1169634 컴퓨터네트워크 인터넷을 동작시키는 컴퓨터네트워크 프로토폴을 학습한다. www.kocw.net 기초를 다지고 점점 더 깊이 공부해 볼 예정.
[Swift] Auto Layout 세 가지 방법 (feat. SnapKit)
뷰(View)를 그릴 때 위치 즉, 레이아웃을 설정하게 되는데, 기기 사이즈가 워낙 다양하다보니 자동으로 기기 환경에 맞게 레이아웃이 변경되도록 하는 것을 오토레이아웃(Auto Layout)이라고 한다. 오토레이아웃을 어떻게 구현할 수 있는지, 그 방법들의 장단점은 무엇인지 하나하나 살펴보자. (아래와 화면을 구성하기 위해 어떻게 레이아웃을 설정할 수 있는지 보자) 1. 일반적인 오토레이아웃 // X버튼 // autolayout 적용을 위해서는 false 설정 필수! closeButton.translatesAutoresizingMaskIntoConstraints = false // view에 추가 self.view.addSubview(closeButton) // autolayout closeButton...
[프로그래머스] 신규 아이디 추천 (feat. Swift 정규표현식)
2021 KAKAO BLIND RECRUITMENT 1번 문제인 신규 아이디 추천. python으로는 정규표현식을 작성하는게 조금 익숙하다고 느꼈는데, Swift로 하려니 또 색다른 느낌. Swift로도 정규표현식을 제대로 공부해야할 필요가 있다고 생각된다. 다른 코테에서도 항상 문자열을 다루는 문제는 꼭 나오는 것 같다! 문제를 읽어봤을 때, 그냥 차례차례 구현하면 되겠다라는 생각이 들었다. 다만 생각과 내 손은 항상 같지 않다는 거... 아무튼 문제에 나와있는 것 처럼 스텝을 나누어 진행했다. import Foundation func solution(_ new_id:String) -> String { // 소문자 치환은 먼저 진행 var id = new_id.lowercased() // 각 단계별 수..