분류 전체보기

iOS/UIKit

Swift로 인스타그램 스토리 하트 파티클 애니메이션 만들기

인스타그램을 하면서 항상 궁금했다. 내 스토리에 친구들이 하트를 눌러보면 보이는 저 하트가 올라가는 애니메이션은 어떻게 구현한 걸까? 유니티로는 파티클 애니메이션을 구현해 본 적이 있는데, Swift로 네이티브 iOS 앱을 만들 때는 어떻게 만들어야 할지 감도 안 왔다. 이것저것 찾아보니 방법에는 크게 두 가지가 있었다. CAEmitterLayer와 SpriteKit에 포함되어 있는 SKEmitterNode다. SKEmitterNode 위에서 잠깐 설명했듯, Swift로 게임을 만들 수 있게 지원하는 SpriteKit에 포함되어 있다. 인스펙터에서 실제 파티클이 생성되는 모습을 보며 값들을 조정해줄 수 있어 편리하다. 하지만 UIView에 올리기 위해서는 SKView라는 SpriteKit의 뷰를 하나 만..

Archive/우아한테크러닝

우아한테크러닝 4기 "나만의 노션 만들기(feat.시니어봇)" 2차시

우아한테크러닝4기 미니노션 만들기의 2차시가 끝났습니다. 이번에는 우리가 1달 간 어떤 서비스를 만들 것인지 기획을 확정하고, 그 목표를 달성하기 위해 어떤 기능을 넣을 것인지, 어떤 프레임워크를 이용해 개발할 것인지 이야기를 나눠보았습니다. 아래는 제가 정리한 내용입니다! 기술 난제 기술 난제 파악 기술 난제를 파악해야 한다! 해본 적이 있어서 이렇게 이렇게 하면 된다 그림이 그려지는 것 간단할 거 같은데 해본 적은 없어서 얼마나 걸릴 줄도 모르고 어떻게 하는지 그림이 그려지지 않는 것 → 이 둘을 구분할 것 해본 적이 있지만 다르게 시도해보고 싶은 게 있는지 생각 똑같은 방식으로만 하면 발전이 없다. 그니까 새로운 방법을 생각해볼 것. 이전에 했던 방식에 장점만 있는 건 아니니까 또 어떻게 시도해볼 ..

Archive/BOJ

백준 18870번: 좌표 압축

www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 구현 언어: 파이썬 import sys input = sys.stdin.readline n = int(input()) num_set = set() nums = list(map(int, input().split())) num_set = sorted(set(nums)) num_dic = {value: index for index, value in enumerate(..

Archive/BOJ

백준 7785번: 회사에 있는 사람

www.acmicpc.net/problem/7785 구현 언어: 파이썬 import sys input = sys.stdin.readline n = int(input()) people = {} for i in range(n): name, status = input().split() if status == 'enter': people[name] = '' elif status == 'leave': del(people[name]) for name in sorted(people.keys(), reverse=True): print(name) 시도 횟수: 1 구현 포인트: 간단한 문제였다. 탐색과 삽입, 삭제가 많이 일어나야 하는 문제라 가장 시간적으로 유리한 딕셔너리로 구현했다. 입력이 끝나면 딕셔너리에 남은 ke..

Archive/BOJ

백준 18115번: 카드 놓기

www.acmicpc.net/problem/18115 18115번: 카드 놓기 수현이는 카드 기술을 연습하고 있다. 수현이의 손에 들린 카드를 하나씩 내려놓아 바닥에 쌓으려고 한다. 수현이가 쓸 수 있는 기술은 다음 3가지다. 제일 위의 카드 1장을 바닥에 내려놓는다. www.acmicpc.net 구현 언어: 파이썬 import sys from collections import deque input = sys.stdin.readline n = int(input()) orders = list(map(int, input().split())) # 스택이라 deque 대신 list original = deque() # 양방향에서 데이터를 넣어야 해서 덱 for i in range(1, n+1): curr = o..

Archive/BOJ

백준 1003번: 피보나치 함수

www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 구현 언어: 파이썬 import sys input = sys.stdin.readline def one_counter(n): zero_cnt = [1, 0] one_cnt = [0, 1] if n

Archive/BOJ

백준 1764번: 듣보잡

www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net 구현 언어: 파이썬 import sys input = sys.stdin.readline n, m = map(int, input().split()) listen_dic = {} exist = [] count = 0 for i in range(n): listen_dic[input().strip()] = '' for i in range(m): name = input().strip() try: _ = listen_d..

Archive/BOJ

백준 1620번: 나는야 포켓몬 마스터 이다솜

www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 구현 언어: 파이썬 import sys input = sys.stdin.readline n, m = map(int, input().split()) pokemon_dic = {} pokemon_names = [] # 포켓몬 도감 만들기 for i in range(n): name = input() # 입력 받은 값을 딕셔너리에 저장 pokemon_dic[i+1] = name # 입력 받..

Danna 다나
'분류 전체보기' 카테고리의 글 목록 (5 Page)