본문 바로가기

기타공부

(4)
코딩테스트 연습 2020 KAKAO BLIND RECRUITMENT 문자열 압축 Swift func solution(_ s:String) -> Int { //s의 길이는 1 이상 1,000 이하입니다. //가장큰 아웃풋숫자인 1000을 디폴트로 줌 var outputInt : Int = 1000 //swift String 을 처리하기 복잡하기에 String 배열로 변경 var stringArray : [String] = s.map{ String($0) } //글자갯수제한 if(s.count > 1000){ return 0 //1글자짜리 텍스트 따로처리 }else if(s.count == 1){ return 1 }else{ //나눌수 있는 최대 크기는 string의 크기의 절반 이다. for count in (1...stringArray.count / 2) { var stringCount : [..
코딩테스트 연습2020 KAKAO BLIND RECRUITMENT괄호 변환 Swift import UIKit func solution(_ p:String) -> String { return finalFunction(p: p) } func makeUV(item :String) -> (String , String) { var count1 : Int = 0 var count2 : Int = 0 //균형잡힌 괄호 문자열 을 찾기 위해 앞에서 부터 ( 수를 찾음 for char in item { if(char == "("){ count1 += 1 }else{ count2 += 1 } // (의 수와 ) 수가 같다면 균형잡힌 괄호 문자열이기에 for 문을 멈추고 // U , V 를 배출 if(count1 == count2){ break } } //앞에서 부터 ( 의갯수 와 ) 의 갯수 에서 inde..
코딩테스트 - 해시 - 위장 Swift func solution(_ clothes:[[String]]) -> Int { //곱셈을 진행할 예정이라 기본값 1을 준다. var multipleLockCount : Int = 1 //옷종류와 해당 옷의 몇개의 옷종류가 있는지 저장하는 딕셔너리 var clothCounts : [String : Int] = [:] //리스트를 받으면 //0번은 옷의 이름 1번은 옷의 종류이다 for item in clothes { //옷의 종류가 이미 포함되어있다면 //옷의 종류를 늘리지 않고 옷 종류의 갯수를 올리고 if(clothCounts.contains{ $0.key == item[1] }){ simpleLockCount += 1 clothCounts[item[1]]! += 1 }else{ //처음 등록된 옷의..
2018 KAKAO BLIND RECRUITMENT 파일명 정렬 Swift Swift로 풀어보는 파일명 정렬 import UIKit typealias HNT = (String , String , String) //파일을 HEAD , NUMBER , TAIL 부분으로 나눠주는 로직 // func HEAD_NUMBER_TAIL_SLICE(_ item : String) -> HNT{ var Head : String = "" var Number : String = "" var HeadIndex : Int = 0 var NumberIndex : Int = 0 var Tail : String = "" //꼬리부분을 알아내기 위해 사용 let LetterPlus : [String] = [" ",".","-"] //받아온 String 을 배열 로 변경 let Name = item.map { ..