전체 글 244

백준 7568번 덩치 파이썬

https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 내 코드 big = [] result = [] N = int(input()) for i in range(N): x, y = list(map(int, input().split())) big.append((x, y)) for i in range(N): cnt = 1 for j in range(N): if big[i][0] < big[j][0] and big[i][1] < big[j][1]..

BOJ/Python 2024.03.22

leetcode TwoSum 파이썬 - HashTable

https://leetcode.com/problems/two-sum/description/ 내 코드# 시간복잡도 O(N^2) class Solution(object): def twoSum(self, nums, target): result = [] for i in range(0, len(nums)): for j in range(i+1, len(nums)): if nums[i] + nums[j] == target: result += [i, j] return result# 시간복잡도 O(N) class Solution(object): def twoSum(self, nums, target): hash_table = {} # 해시 테이블 -> 딕셔너리 for i, num in enumerate(nums): com..

leetcode 2024.03.21

백준 14502번 연구소 파이썬 BFS

https://www.acmicpc.net/problem/14502 14502번: 연구소인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크www.acmicpc.net 내 답안import sys import copy from collections import deque input = sys.stdin.readline N, M = map(int, input().split()) lab = [list(map(int, input().split())) for _ in range(N)] dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] def find_spaces(lab..

BOJ/Python 2024.03.20

백준 14719번 빗물 파이썬

https://www.acmicpc.net/problem/14719 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net 내 코드 h, w = map(int, input().split()) blocks = list(map(int, input().split())) result = 0 for i in range(1, w-1): left_max = max(blocks[:i]) right_max = max(blocks[i+1:]) standard = min(left_max, right_max) depth ..

BOJ/Python 2024.03.19

[iOS] SPM(Swift Package Manager) 설치 방법

안녕하세요 띵지니어 😼 입니다. 오늘은 SPM으로 외부 라이브러리를 설치하는 방법에 대해서 알아볼게요 프로젝트가 초기 세팅도 참고해 보고 싶다면 아랫글 먼저 보고 오시면 좋아요! 🍏 코드 베이스 초기 세팅(UIKit) iOS 의 오픈소스 라이브러리를 사용하기 위해서는 패키지 관리자가 필요한데요. 총 3가지가 존재합니다. 1. Cocoapods 2. Carthago 3. Swift Package Manager(SPM) 저는 주로 Cocoapods와 SPM을 사용합니다. 이번 포스팅에는 SPM(Swift Package Manager)을 다룹니다. 1. Xcode -> 프로젝트 -> Package Dependencies 를 들어가 줍니다. 그리고 + 버튼을 눌러줄게요 2. 아래와 같은 창이 뜨는데, 검색창에 ..

iOS 2024.03.10

백준 1966번 프린터 큐 파이썬

https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 내 답안 from collections import deque N = int(input()) for i in range(N): N, M = map(int, input().split()) priority = deque(list(map(int, input().split()))) ind = deque([i for i in range(N)]) cnt = 0 while priority: m = max(prio..

BOJ/Python 2024.03.08

[iOS] AutoLayout 충돌 해결하는 방법 (feat: SnapKit)

안녕하세요 띵지니어 😼 입니다. 이번 포스팅은 오토 레이아웃을 짤 때 Layout Conflict 가 발생할 경우 어떻게 해결해야 하는지 알아볼게요. UI Layout을 짜다가 다들 아래와 같이 Warning 메시지를 보신 적 있으실 거예요! (없으면 진짜 고수..) Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the..

iOS 2024.03.05

[iOS] 스토리보드 없이 UIKit으로 프로젝트 세팅: 코드베이스 설정

안녕하세요 띵지니어 😼 입니다. 이번 포스팅은 UIKit 프레임 워크에 스토리보드를 사용하지 않고 코드 베이스 로 프로젝트를 진행해야 할 때 초기 세팅을 어떻게 해야 하는지에 대해 알아보도록 할게요. 1. 프로젝트 생성하기 Create New Project... -> iOS -> App 아래와 같이 기본 사항을 입력해 줍니다. (똑같이 하셔도 됩니다.) **Product Name : 프로젝트의 이름을 정해줍니다. Team : 애플 개발자 계정을 129,000 원으로 구매했고, 개발 인증서가 있으면 그 계정으로 지정하면 되는데, 따로 없으면 None으로 지정하셔도 됩니다. (추후 수정 가능) **Organization Identifier: 저는 띵진으로 등록했는데, 원하시는 네임으로 하시면 됩니다. (보통..

iOS 2024.02.23

[iOS] 이미지는 알파 채널 또는 투명도를 포함할 수 없습니다. 해결 방법

AppStore에 심사를 올리면서, iOS 미리 보기 및 스크린샷 부분을 넣어야 합니다. 이때 알맞은 규격에도 불구하고, 아래와 같은 경고 메시지가 뜨게 되는데 해당 문제는 간단하게 해결할 수 있습니다. 1. 올릴 이미지 -> 파일-> 내보내기 들어가줍니다. 2. 이미지의 알파값이 체크되어 있을 텐데 체크를 풀어줍니다. 3. 저장한 이미지를 다시 올려주면 문제없이 심사를 요청할 수 있습니다~! Xcode 15.0 iOS 17.2.1 MacOS Sonoma 14.2.1 환경에서 작성 한 글입니다. 감사합니다. 🤗

iOS 2024.02.15

[프로그래머스] 의상 파이썬

https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 답안 from collections import defaultdict def solution(clothes): dic = defaultdict(int) answer = 1 for _, y in clothes: dic[y] += 1 for _, j in dic.items(): answer *= (j+1) return answer-1 Review 이 문제는 보자마자 구현이 아닌 수학적으로 접근해야..

BOJ/Python 2024.02.12