코딩테스트 13

문자열에서 특정문자"들"을 다른 문자로 치환하는 방법 - Swift

옛날에 코테 문제풀 때 다른 방법이 있었던 것 같은데.. 기억이 안나서 extension하나 만들었습니다 extension String { func replaceTargetsToReplacement(_ occurs: [String], _ replacement: String) -> String { var converted = self for occur in occurs { converted = converted.replacingOccurrences(of: occur, with: replacement) } return converted } } 다른 방법 아시는 분 있으면 댓글로 알려주세요! 🙏🏻

Swift 2021.10.23

[프로그래머스 L2] [1차] 캐시 - swift

문제링크 https://programmers.co.kr/learn/courses/30/lessons/17680 - cacheSize의 도시이름 배열 cities를 입력받는다. - cacheSize는 정수, 0이상 30이하 - cities는 도시 이름으로 이뤄진 문자열 배열, 최대 도시 수는 100,000개 - 각 도시 이름은 공백, 숫자, 특수문자 등이 없는 영문자로 구성 ( 대소문자 구분 없음 ) - 도시이름은 최대 20자 - 캐시 교체 알고리즘은 LRU (Least Recently Used) 사용 -> 가장 사용한지 오래된 것을 제거 - cache hit일 경우 실행 시간은 1 - cache miss일 경우 실행 시간은 5 코드 func solution(_ cacheSize:Int, _ ..

[프로그래머스 L2] 영어끝말잇기 - swift

문제링크 https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co.kr 문제 요약 1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고..

[프로그래머스 L2] 스킬트리 - swift

문제 링크 https://programmers.co.kr/learn/courses/30/lessons/49993 코딩테스트 연습 - 스킬트리 programmers.co.kr 문제 요약 skill_trees 배열에서 주어진 skill의 순서대로 선행 스킬을 배우는 스킬만 가능한 스킬트리로 본다. 가능한 스킬트리의 개수를 return 하는 함수를 작성하면 된다. 예를들어 skill이 "CBD" 라면, 무조건 C->B->D 순서로 스킬을 배워야한다. BACDE : B 스킬 전에 C가 선행되어야 하므로 불가능한 스킬트리이다. CBADF : 가능한 스킬트리 AECB : 가능한 스킬트리 BDA : B 스킬 전에 C가 선행되어야 하므로 불가능한 스킬트리이다. 코드 func solution(_ skill:String,..

Stack / Queue 구현해보기 - swift

** 작성자가 stack / queue를 연습하면서 작성한 기록을 남긴내용입니다. 나중에 자세한 설명가 추가 내용을 작성하며 수정할 예정입니다. ** Stack - LIFO, array로 구현 - 다양한 자료형을 수용할 수 있도록 generic을 이용 - push, pop 메서드의 경우 구조체 내부에서 데이터를 수정하기 때문에 mutating 키워드를 사용. struct Stack { var stack = [T]() var isEmpty: Bool { return self.stack.isEmpty } var top: T? { return self.stack.last } mutating func push(_ item: T) { self.stack.append(item) } mutating func pop(..

[프로그래머스 L1] 문자열 다루기 기본 - swift

문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12918 코딩테스트 연습 - 문자열 다루기 기본 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 programmers.co.kr 문제 요약 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성되어 있는지 확인해주는 함수. 코드 func solution1(_ s:String) -> Bool { var bool: Bool = false if s.count == 4 || s.count == 6 { bool = (Int(s) != ..

[프로그래머스 L2] [1차] 뉴스 클러스터링 - swift

문제 링크 https://programmers.co.kr/learn/courses/30/lessons/17677?language=swift 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr 문제 요약 유사한 기사를 묶는 기준을 정하기 위해 "자카드 유사도"라는 방법을 찾아냈다. 자카드 유사도는 집합 간의 유사도를 검사하는 여러 방법 중 하나로, 두 집합 A,B 사이의 자카드 유사도 J(A, B)는 두 집합의 교집합 크기를 두 집합의 합집합 크기로 나눈 값을 정의된다. 집합 A,B가 모두 공..

주어진 문자열이 문자로만 이루어져 있는지 체크하는 함수 만들기 - swift

swift5에서 character의 속성이 추가 되었다. 그 중에서 character가 문자인지 확인하는 isLetter 를 사용하여 문자열 전체가 문자로만 이루어져 있는지 확인하는 코드를 작성해 보았다. . . . func isAlphabet(_ str: String) -> Bool { let arr = str.map{ String($0) } // map을 사용하여 문자열을 배열로 변환. for i in 0.. Bool { for char in str { if !char.isLetter { return false } } return true } 틀린부분이 있거나, 더 좋은 방법이 있다면 댓글로 남겨주세요! 🌈댓글은 언제나 환영입니다🙏🏻

Swift 2021.07.22

[프로그래머스 L1] 신규 아이디 추천 - swift

문제 링크 https://programmers.co.kr/learn/courses/30/lessons/72410?language=swift 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr 문제 요약 신규 유저가 입력한 아이디를 나타내는 new_id가 매개변수로 주어질 때, "네오"가 설계한 7단계의 처리 과정을 거친 후의 추천 아이디를 return 하도록 solution 함수를 완성하시오. 1단계 new_id의 모든 대문자를 대응되는 소문자로 치환합니다. 2단계 new_id에서 알파벳 소문자, 숫자, ..

[프로그래머스 level1] 가운데 글자 가져오기 - Python

문제 본문 https://programmers.co.kr/learn/courses/30/lessons/12903?language=python3 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 문제 풀이 1. 첫번째 풀이 엣날에 잠깐 겉핥기식으로 python을 공부했었어서 따로 찾아보지 않고 기억을 더듬어 작성해본 코드이다. 문자열s의 길이를 2로 나눈 값을 middle에 넣어주었다. -> 가운데 인덱스 만약 문자열s의 길이가 홀수 이면, s의 middle번째 인덱스에 있..

Python 2021.07.18
반응형
1 2