안녕하세요! 지우개입니다 최근에는 면접 준비를 하다가 새로 깨달음을 얻었어요 그리고 곧 새 프로젝트를 시작했는데 기능 하나, UI 하나하나를 새로 개발할 때마다 궁금한게 샘물처럼 퐁퐁 솟아나더라구요? 그동안은 좀 넓고 얕게 알아보고 개발했다면, 이제부터는 알고 싶은 것을 하나하나 깊게 정리해보고자 라는 이름의 블로그 글을 꾸준히 쓰기로 결심했습니다 ㅋㅋ 궁금해요! 알아보고 싶었던 부분은 바로 SceneDelegate의 window.makeKeyAndVisible() 부분입니다. (분명 배웠던 것 같은데.. 저게 어떤 역할을 할까? 라고 스스로 물어보면 대답할 수가 없더라구요 😓) 먼저 이 코드가 쓰이는 부분인 SceneDelegate의 역할부터 알아보겠습니다. SceneDelegate란? SceneDel..
코드베이스로 UI를 구성하다가 맞닥뜨린 에러.. Property '' with type '' cannot override a property with type '' UILabel를 title이라는 이름을 사용해서 정의해주려다 보니 에러가 발생한 것!! UILabel이라는 클래스 안에 title이라는 프로퍼티가 이미 존재하기 때문에, 같은 이름으로 상속하여 사용하지 못하는 것!! 정의해준 UILabel 이름을 title → logo로 변경해주니 바로 에러가 사라졌다.
https://www.acmicpc.net/problem/7569 대표적인 그래프 탐색 문제!! 마지막 토마토가 익는 날까지 최소 며칠이 걸리는지 풀어보는 문제다.ㅋㅋ 큐에 익은 토마토 좌표를 넣고, 그 토마토의 상하, 좌우, 위아래까지 확인한 다음 그 토마토가 익은 날짜에 +1을 해서 저장해준다. 그리고 익은 토마토 큐에 넣어주고 또 반복! let temp = readLine()!.split(separator: " ").map({ Int($0)! }) let m = temp[0] let n = temp[1] let h = temp[2] var tomato: [[[Int]]] = Array(repeating: [], count: h) var visited = Array(repeating: Array(re..
이전 게시글에서 다이나믹 프로그래밍을 맛볼 수 있었는데, 한 발짝 더 나아가서 효율적으로 풀 수 있는 방법을 고민하는 문제가 여기 있다. 이전 게시글 보러가기 ⬇️ 2023.07.18 - [공부하자!/알고리즘] - 백준 | 9095 1, 2, 3 더하기 Swift - DP 우선, 점화식을 구해보자! 문제에서 P(1)부터 P(10)까지 제공해주었다 1 2 3 4 5 6 7 8 9 10 1 1 1 2 2 3 4 5 7 9 그림에서 보면 알 수 있듯이, 11번째 삼각형의 한 변의 길이는 9+3, 즉 P(10)+P(6)인 12이다. 10번째 삼각형의 한 변의 길이는 P(9)+P(5)인 9이다. 즉 점화식을 구하면 다음과 같다 P(n) = P(n-1) + P(n-5) 하지만 이걸 그대로 코드로 구현하면 시간 초과..
다이나믹 프로그래밍이란? 다이나믹 프로그래밍, 동적 계획법이라고 불리는 알고리즘은 하나의 커다란 문제를 작은 문제들로 나누어 값을 구하는 방법이다. 점화식을 구하고 나면 쉽게 풀 수 있지만 이런 사고방식에는 연습이 필요하다. 이 문제에서는 1, 2, 3만을 이용해 숫자를 나타낼 때, 그 경우의 수를 구해야 한다. 작은 것부터 차례대로 생각해보자. n = 1 1 1개 n = 2 1+1 2 2개 n = 3 1+1+1 1+2 2+1 3 4개 n = 4 1+1+1+1 1+1+2 1+2+1 1+3 2+1+1 2+2 3+1 7개 n=1일 때는 1, n=2일 때는 2, n=3일 때는 4 그리고 n=4일 때는 7개의 경우의 수가 나온다. 이 때 n=4를 자세히 살펴보자. 1+3이라는 큰 틀을 구할 때, 오른쪽 피연산자..
46. Permutations Given an array nums of distinct integers, return all the possible permutations. You can return the answer in any order. Example 1: Input: nums = [1,2,3] Output: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] Example 2: Input: nums = [0,1] Output: [[0,1],[1,0]] Example 3: Input: nums = [1] Output: [[1]] Swift로 순열을 구하는 코드를 찾다가 풀게 된 문제! (Swift에서는 순열, 조합을 일일이 구해야 하기 때문에..한 번 제대로 ..