적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

분류 전체보기 568

[Objective-C iOS] OpenCV detect rectangle 윤곽선 가져오기

내가 서치해본 결과, iOS에서 OpenCV를 사용하기엔 굉장히 열악하다. 샘플 코드 발견해도 대부분 4, 5년 전에 작성되어 작동조차 안되는 경우가 많다.. Swift로 작성할수가 없으니 Swift opencv 검색하면 당연히 안나온다. 그냥 기초 흑백변환 가이드 정도만 있다. OpenCV 를 활용하고 싶다면 무조건 Objective-C로 작성을 해주어야 하고, 옵씨로 검색을 해야한다. 그나마 파이썬이나 안드로이드에서 사용된 예시는 꽤 있는 듯 하여 작동 흐름이라도 알기 위해 다른 분야 검색 결과들을 참고 했다. 인자 갯수나 사용법은 조금씩 다르지만 사용되는 함수 명이나 흐름은 비슷하니까 다른 언어로 참고해도 좋을듯! 의도치않게 Objective-C 공부도 하게된.. ㅎㅎㅎ 그리하여 내가 직접 정리해본..

[Swift iOS] OpenCV 흑백변환

OpenCV 설치 터미널에서 $ pod init $ open -a Xcode Podfile target 'OpenCVtest' do use_frameworks! pod 'OpenCV', '~> 4.3' end $ arch -x86_64 pod install pod 설치 대신 opencv framework를 프로젝트에 그대로 넣어서 사용하는 방법도 있지만, 그렇게 하니까 framework 내부의 opencv 코드들을 뜯어보기가 힘들어서 cocoapod 으로 설치하는걸 추천..! Objective-C 파일 생성 Swift에서 Bridge-Header를 이용해 objective-c를 호출하고, objective-c에서 opencv를 호출하여 리턴해주는 구조. 따라서 아마도 Objective-C로만 함수를 만들..

Netflix 에밀리, 파리에 가다

파리 가고싶다.. 근데 파리 사람들 오만하고 까칠한거는 유명한가보다 ㅋㅋㅋㅋ 파리에서 파리 사람과 대화를 길게 나눠본 적은 없어서 몰랐는데 진짜로 파리 사람들의 연애관, 이성관은 굉장히 오픈되어있는걸까? 신기하다 이해안되는 마인드들도 있고 너무나 부러운 마인드들도 있고. 암튼 참 재밌는 곳이야 파리는.. 본격 파리 뽐뿌오는 드라마..! I don't want to step on your toes. 괜히 발 뻗기 죄송한데요. (상사의 일에 누가 될까봐 걱정) step on one's toes : 영역/권한을 침범하다, ~를 방해하다, ~에 개입하다, ~의 기분을 상하게 하다, ~를 성가시게 하다, 망치게 하다 Oh I stepped on your toes, didn't I? 아 제가 그쪽 업무를 침범했군요..

영어공부 2022.01.11

[Swift 알고리즘] Programmers 직사각형 별찍기

문제 설명 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 - n과 m은 각각 1000 이하인 자연수입니다. 입출력 예시 //입력 5 3 //출력 ***** ***** ***** 내 코드 import Foundation let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! } let (a, b) = (n[0], n[1]) for _ in 1...b { print(String(repeating: "*", count: a)) }

[Swift 알고리즘] Programmers 콜라츠 추측

Level 1 연습문제 콜라츠 추측 문제 설명 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 이 작업을 몇번이나 반복해야하는지 반환하는 함수. 500번을 반복해도 1이 되지 않으면 -1을 반환 제한조건 - num은 1 이상, 8000000 미만인 정수입니다. 입출력 예 print(solution(6)) //8 print(solution(16)) //4 print(solution(626331)) //-1 print(solution(1)) //0 내 답안 func solution(_ num:Int) -> Int { if num == 1 { return 0 } var num = num f..

[Swift 알고리즘] Programmers 하샤드 수

문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한 조건 - x는 1 이상, 10000 이하인 정수입니다. 입출력 예 print(solution(12)) //true print(solution(13)) //false 내 답안 func solution(_ x:Int) -> Bool { let s = String(x) let arr = s.map {Int(String($0))!} var sum = 0 for i in arr { sum += i } return (x % s..

[Swift] String 문자열 다루기

1. 문자열 단순구현 유형 ex) 카카오 기출문제 - 신규 아이디 추천 (7단계에 걸쳐 사용자가 만드려는 아이디 규칙에 따라 수정해 새로운 아이디 추천) 기본 String 관련 함수들 잘 정리해두고 복습 equals length uppercase lowercase indexof 문자열 내 다른 문자열 존재하는지 판단할 때 substring 스트링 일부 추출 replace 문자열 일부 찾아 대체 - replaceoccurencesof trim 앞뒤 공백 제거 함수 compareTo 두 문자열의 아스키 순서 비교 (알파벳 순서 비교) split containts charAt startsWith endsWith 2. 문자열 + 기타 알고리즘 유형(해시, 정렬, DFS 등) ex) 카카오 문제 신고 결과 받기 ..

Algorithm/참고 2022.01.10

[Swift 알고리즘] Programmers x만큼 간격이 있는 n개의 숫자

Level 1 연습문제 x만큼 간격이 있는 n개의 숫자 문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 - x는 -10000000 이상, 10000000 이하인 정수입니다. - n은 1000 이하인 자연수입니다. 모범 답안 func solution(_ x:Int, _ n:Int) -> [Int64] { var result = [Int64]() for i in 1...n { result.append(Int64(i * x)) } return result } 내 코드 func solution(_ x:Int, _ n:Int) ..

[Swift 문자열] Programmers 핸드폰 번호 가리기

Level 1 연습문제 핸드폰 번호 가리기 문제 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한조건 phone_number는 길이 4 이상, 20 이하인 문자열입니다. 모범답안 😊 func solution(_ phone_number:String) -> String { return String(repeating:"*", count:phone_number.count-4)+phone_number.suffix(4) } 오우.. 이런 방법이..! swift에서도 String을 저렇게 ..

네트워크 기초

네트워크란? 노드들이 데이터를 공유할 수 있게 하는 디지털 전기통신망의 하나. 즉, 분산되어 있는 컴퓨터를 통신망으로 연결한 것. 서로 연결되어 있는 하나의 통신망 네트워크에서 여러 장치들은 노드 간 연결을 사용하여 서로에게 데이터를 교환한다. *노드 : 네트워크에 속한 컴퓨터 또는 통신 장비를 뜻하는 말 전 세계의 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크가 바로 인터넷. (인터넷은 네트워크 망의 한 종류. 세상에서 가장 큰 네트워크 통신망) www (world wide web) 일반적으로 웹이라고 하며, 인터넷상에서 쉽게 정보를 찾을 수 있도록 고안된 세계적인 인터넷망으로, HTTP 프로토콜을 사용하기 위한 인터페이스 는 인터넷을 통해 웹과 관련된 데이터를 공유하는 것. 웹서비스 (http..

컴퓨터시스템 2022.01.06
728x90
반응형