본문 바로가기

분류 전체보기

(139)
백준 9012 괄호 풀이방법 스택에 "("을 쌓아놓고 닫힌 괄호면 하나씩 빼주었다. 코드 var repeatNum = Int(readLine()!)! func sol() { A: for i in 0..
백준 12605 단어순서 뒤집기 깨달은 점 print 하는데에 꽤 오래 걸린다고 생각해서 String 변수를 하나 만들어서 여기에 var string += Case #1: test \n 이런식으로 하고 마지막에 print(string) 한번에 해봤다. 그런데 print를 여러번 하는 것보다 4ms 오래걸렸다. 무조건 입출력 하는 것 보다는 빠를 줄 알았는데 의외였다. 풀이 let repeatNum = Int(readLine()!)! func sol() { for i in 1...repeatNum { let input = readLine()! let splitedInput = input.split(separator: " ") print("Case #\(i):", splitedInput.reversed().joined(separator:..
백준 10799 쇠막대기 이게 도대체 무슨 문제일까 처음 접근 방식을 떠올리기가 힘든 문제 였습니다. 근데 스택문제라는 걸 알고 다시보니까 앞에서 부터 한개씩 숫자 이것저것 맞춰보니까 아..? 어? 오.. 하고 깨달았습니다. ㅋㅋ 풀이법은 다음과 같습니다. "(" 이면 스택에 넣는다. ")" 이면 그 앞 인덱스의 괄호를 확인한다. 그 앞 괄호가 "(" 이라 레이저를 뜻하는 괄호면 그 동안 스택에 쌓아 놨던 "("의 갯수를 더해준다. 그 앞 괄호가 ")" 이라 쇠막대기의 끝을 뜻하는 괄호면 스택에 쌓아놨던 "("를 하나 없애고 두개로 쪼개지는 것이므로 +1 더해줌 풀이방법 func sol() { let input = Array(readLine()!) var answer = 0 var lineNum = 0 for i in 0..
App Store 개발자 등록하기 App Store 개발자 등록하기 시작 전 알아두면 좋은 사실들 개발자 등록하는데 꽤 오래 걸린다. (하루 이상) 129,000원 등록하기 클릭 -> https://developer.apple.com/programs/ Apple Developer Program - Apple Developer Join the Apple Developer Program to reach customers around the world on the App Store for iPhone, iPad, Mac, Apple Watch, Apple TV, and iMessage, and on the Safari Extensions Gallery. developer.apple.com 저 버튼 누르고 홈페이지 흐름대로 쭈욱 따라가다 보면 ..
아스키코드와 유니코드 아스키코드 사람의 언어를 컴퓨터 언어로 변환하기 위한 중간 기호 표 (7비트 부호로 128개의 숫자가 알파벳, 숫자, 특수문자, 제어문자 포함됨) 아스키코드 왜 필요해? 사람언어 -> 컴퓨터 언어 바로 바꾸면 안돼?! '통신'하기 위해서는 기준이 필요합니다. 만약 아스키코드가 없다면 무슨 일이 벌어질까요? 철수는 A를 0001(컴퓨터 언어 이진수)로 쓰고 영희는 A를 0010으로 사용한다고 합시다. 그럼 철수가 영희에게 AAA 라는 메시지를 보내면 영희가 받은 메시지는 0001/0001/0001 입니다. 영희의 A는 0010이였죠..? 그럼 당연히 이상한 값으로 해석(디코딩) 되거나 글자가 깨져버립니다. 유니코드 아스키코드의 확장판, 영어만 포함하지 말고 다른 나라 언어도 포함시켜줘.. 이제부터는 다른 ..
테스트 파일에 있는 resource 접근하기 - Swift 1번 파일에 접근하는 법 let fileURL = Bundle.main.url(forResource: "sample", withExtension: "mp3") print(fileURL) //file:///Users/ohking/Library/Developer/ //CoreSimulator/Devices/54E10A3B-2139-466D-AE4B-5DC1979BBCB3/ //data/Containers/Bundle/Application/D2C8177A-09AB-41FD-A332-85480AFC23C6/ //VideoConverter.app/sample.mp3 2번 파일에 접근하는 법 let testBundle = Bundle(for: type(of: self)) guard let fileURL = test..
앱 실행 흐름 앱 실행 흐름 C언어 기반이기 때문에 Swift도 마찬가지로 main 함수 부터 시작합니다. Swift @Main으로 진입점을 찾습니다. UIApplicationMain(_:_:_:_:) 메소드를 호출합니다. UIApplication 싱글톤 객체 생성하고 AppDelegate 객체를 만들어 대리자를 설정합니다. 애플리케이션의 런 루프를 포함하여 메인 이벤트 루프를 설정하고 이벤트 처리를 시작합니다. nib파일을 사용하는 경우나, info.plist 파일을 읽어들여 필요한 데이터를 로드한다. 실행 할 준비를 마치고 AppDelegate에게 application:didFinishLaunchingWithOptions: 메시지를 보냅니다. UIApplication이란? 실행되는 앱을 제어하기 위해 생성되는 싱글..
비디오 & 오디오 형식 변환을 위한 사전지식 확장자 확장자란 코덱(encode+decode)을 담는 컨테이너를 가리키는 말입니다. 예를 들어 .mp4는 mp4라는 컨테이너안에 H264(Video Codec)+ AAC(Audio Codec) 을 포함합니다. 꼭 이 두개의 코덱뿐만이 아니라 mp4 컨테이너는 다른 코덱도 지원합니다. MP4 컨테이너를 지원하는 동영상 코덱으로는 MPEG-1, MPEG-2, MPEG-4[3], H.263, MPEG-4 AVC(H.264), MPEG-H HEVC(H.265), MPEG-I VVC(H.266), AV1이 있고, 오디오 코덱으로는 MPEG-2 part.3의 AAC[4], AC-3, Dolby TrueHD, DTS(DTS-HD 포함), MP1, MP2, MP3, Opus, Apple Lossless, TwinVQ..