Swift 43

[iOS / Error] Build input file cannot be found: 에러 해결

"Build input file cannot be found:"라는 문구와 함께 Info.plist 파일을 찾을 수 없다는 에러가 발생했습니다. Info.plist 파일을 폴더 안으로 이동시키면서 기존 파일 위치와 일치하지 않아 생긴 에러입니다. 해당 에러를 해결해보겠습니다. [Step 1] 프로젝트 파일 우클릭 -> Open with External Editor 클릭 [Step 2] 새로운 IDE에서 프로젝트 파일 클릭 (참고로 저는 vscode입니다.) [Step 3] cmd + f 로 "info.plist" 검색 후 Debug와 Release에서 Info.plist 파일 경로를 바뀐 경로로 변경

Error 2021.07.27

[Programmers] 프린터 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 1. 문제 이해하기 대기목록에 있는 문서의 중요도 배열(priorities), 요청한 문서의 현재 위치(location)가 주어졌을 때, 요청한 문서가 몇 번째로 인쇄되는지 구하기 대기목록 배열 크기 1 이상 100 이하 인쇄 작업의 중요도는 1 ~ 9이며 클수록 중요하다. 2. 문제 풀이 생각하기 처음에는 문서의 위치와 우선순위를 해시 테이블로 만드려고 ..

Algorithm/Swift 2021.07.26

[Programmer] 짝지어 제거하기 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 1. 문제 이해하기 문자열이 주어졌을 때, 연속한 두 문자가 동일하면 제거하고, 제거 한 부분을 다시 앞 뒤로 이어주는 과정을 반복합니다. 이때, 모든 문자열이 제거되면 1, 하나라도 남아있으면 0 문자열의 길이는 1 이상 1,000,000 이하의 자연수 2. 문제 풀이 생각하기 문자열의 길이가 최대 1,000,000이 될 수 있기 때문에 ..

Algorithm/Swift 2021.07.16

[Programmers] 오픈채팅방 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 1. 문제 이해하기 문자열 배열 형태로 각 문자열의 첫 번째 단어는 입장, 퇴장, 변경, 두 번째는 유저 아이디, 세 번째는 닉네임이 저장되어 있습니다. 모든 record를 수행하고 나서, 변경이 있다면 변경된 닉네임을 기준으로, 최종적으로 오픈 채팅방에 출력되는 문자열 배열 출력 record는 1 이상 100,000 이하 입출력 예시를 보면 확실히 문..

Algorithm/Swift 2021.07.13

[백준 16931] 겉넓이 구하기 (Swift)

문제 : https://www.acmicpc.net/problem/16931 16931번: 겉넓이 구하기 크기가 N×M인 종이가 있고, 종이는 1×1크기의 칸으로 나누어져 있다. 이 종이의 각 칸 위에 1×1×1 크기의 정육면체를 놓아 3차원 도형을 만들었다. 종이의 각 칸에 놓인 정육면체의 개수가 주어 www.acmicpc.net 1. 문제 이해하기 입력으로 좌, 우(n, m), 그리고 각 칸마다 올려진 블록의 개수를 2차원 배열로 주어진다. 총 겉넓이(위, 아래, 앞, 뒤, 좌, 우 넓이) 출력하기 2. 문제 풀이 생각하기 먼저 위아래는 (2차원 배열의 행 * 열 * 2), 좌, 우는 (좌의 겉넓이 * 2), 앞, 뒤도 (앞의 겉넓이 * 2) 구하면 된다고 생각했습니다. 처음에는 한 방향의 겉넓이를 ..

Algorithm/Swift 2021.07.06

[Programmers] 카카오 인턴십 - 경주로 건설 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/67259 코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr 문제 설명에 앞서, 테스트 케이스 14, 24에서 막혀서 질문하기에 다른 분들..

Algorithm/Swift 2021.07.03

[Programmers] 2020 카카오 인턴십 - 보석쇼핑 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/67258 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr Step 1. 문제 이해하기 gems 배열에는 보석들의 이름이 담겨있다. 모든 종류의 보석을 적어도 1개 이상 포함하면서 가장 짧은 연속하는 구간의 처음과 끝을 정수 배열로 출력 만약 가장 짧은 구간이 여러 개라면 시작 구간이 가장 작은 구간을 출력 배열의 크기는 최대 1 이상 100,000 이하 Step 2. 문제 풀이 생각하기 연속하면서 가장 짧은 구간이라고 해서 투 포인터를 떠올렸습니다. gems..

Algorithm/Swift 2021.07.02

[Programmers] 2020 카카오 인턴십 - 수식 최대화 (Swift)

문제 : https://programmers.co.kr/learn/courses/30/lessons/67257 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr Step 1. 문제 이해하기 숫자(999 이하)와 연산자('+', '-', '*')를 띄어쓰기 없이 포함한 문자열 변수 expression이 존재 문자열의 총길이는 3 이상 100 이하 연산자 우선순위를 임의로 설정하여 나온 우승상금(결괏값)의 절댓값이 가장 큰 값을 출력 Step 2. 문제 풀이 생각하기 연산자 우선순위 조합을 어떻게 구현할 것인지 ..

Algorithm/Swift 2021.07.02

[iOS / Storyboard] Auto Layout 여러 View에 적용하기(2)

이번에는 여러 view에 대한 Auto Layout을 적용해보겠습니다. [Step 1] view 3개 생성하기 먼저 green View에 제약조건을 모두 설정해보겠습니다. 아직 빨간 부분이 존재합니다. 이번에는 pupple View의 제약조건을 모두 설정해보겠습니다. green View의 제약조건은 모두 만족하는 것을 확인할 수 있습니다. [Step 2] pupple의 왼쪽 가장자리 제약조건을 선택하고 green의 왼쪽 가장자리에 맞추기 pupple의 왼쪽 가장자리가 green의 왼쪽 가장자리에 맞춰진 것을 확인할 수 있습니다. 여기서 왼쪽 Constant를 30으로 조정해보겠습니다. 왼쪽을 30으로 줄인 만큼 pupple의 크기가 줄어든 것을 확인할 수 있습니다. 왜 위치가 변하지 않고 크기가 줄어들었..

Storyboard 2021.07.01