๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ

(159)
[Swift] UIButton ์•ˆ์— Image ๋„ฃ๊ณ  ์•„๋ž˜์— Text ๋„ฃ๋Š” ๋ฐฉ๋ฒ• ์ด๋ฒˆ์—๋Š” UIButton ์•ˆ์— Image๋ฅผ ์‚ฝ์ž…ํ•˜๊ณ  ๊ทธ ์•„๋ž˜์— ์›ํ•˜๋Š” Text๋ฅผ ๋„ฃ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์šฐ์„  UIButton ์„ ์‚ฝ์ž…ํ•˜๊ณ ์ž ํ•˜๋Š” ViewController์— ๋„ฃ๊ณ ์ž ํ•˜๋Š” Image ์™€ Text๋ฅผ ์ ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ด๋ ‡๊ฒŒ UIButton ์•ˆ์— Image ์™€ Text๊ฐ€ ์‚ฝ์ž… ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ œ๊ฐ€ ์›ํ•˜๋Š” ๊ฑด Image ์•„๋ž˜ Text ๊ฐ€ ๋ฐฐ์น˜๋œ ํ˜•ํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์— Text์˜ ์œ„์น˜๋ฅผ ์ด๋™์‹œ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” UIButton ์˜ Default Style ๊ณผ Plain Style์˜ ์ฐจ์ด์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋‘ Style์„ ๋น„๊ตํ•ด๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด, Default Style ๋ณด๋‹ค Plain Style ์— Alignment, Pl..
22.07.05 ใ…ฃ UIKit Framework Storyboard vs SwiftUI 2019๋…„ SwiftUI๊ฐ€ ๋ฐœํ‘œ๋˜๊ธฐ ์ „๊นŒ์ง€๋Š” Storyboard ๊ฐ€ ์œ ์ผํ•œ ํ™”๋ฉด ๊ตฌ์„ฑ ๋ฐฉ๋ฒ•์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ๋•Œ๋ฌธ์—, SwiftUI ์™€ ๋น„๊ตํ–ˆ์„ ๋•Œ ๋ ˆํผ๋Ÿฐ์Šค๊ฐ€ ์ ˆ๋Œ€์ ์œผ๋กœ ๋งŽ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ Storyboard ๋Š” ์•„์ดํฐ๊ณผ ์•„์ดํŒจ๋“œ์˜ ํ™”๋ฉด ๊ตฌ์„ฑ์—๋งŒ ์ ํ•ฉํ•˜๊ธฐ ๋•Œ๋ฌธ์—, SwiftUI ์™€ ๋น„๊ตํ–ˆ์„ ๋•Œ ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ๋Œ€์‘์ด ์•ฝํ•˜๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์— ๋น„ํ•ด, SwiftUI ๋Š” ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์— ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฐ•์ ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋‹ค๋งŒ, SwiftUI ๋Š” iOS 13 ์ด์ƒ์—์„œ๋งŒ ์ง€์›์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๋‹จ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „๊นŒ์ง€๋Š” ์•„์ดํฐ๊ณผ ์•„์ดํŒจ๋“œ๋Š” UIKit ๊ทธ๋ฆฌ๊ณ  Mac ์€ appKit ์—์„œ ๊ฐœ๋ฐœ์„ ํ–ˆ๋‹ค๋ฉด, ํ˜„์žฌ๋Š” Mac Catalyst ์™€ apple Silicon M..
[Swift] ์ด๋ฏธ์ง€๋ฅผ ์›ํ˜• ์ด๋ฏธ์ง€๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ํ…Œ๋‘๋ฆฌ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ด๋ฏธ์ง€๋ฅผ ์›ํ˜• ์ด๋ฏธ์ง€๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. ์šฐ์„  ์ด๋ฏธ์ง€๋ฅผ ์›ํ˜•์ด๋ฏธ์ง€๋กœ ๋ฐ”๊พธ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์ด๋ฏธ์ง€๋ฅผ ์กฐ์ •ํ•ด์•ผ ํ•œ๋‹ค. ๋Œ€๋žต์ ์ธ ๋ฐฉ๋ฒ•์„ ๊ฐ„๋‹จํžˆ ์†Œ๊ฐœํ•ด ๋ณด์ž๋ฉด ์ด๋ ‡๋‹ค. 1. ํ•ด๋‹น imageView์˜ cornerRadius ๋ฅผ heigt ๊ธธ์ด์˜ ์ ˆ๋ฐ˜์œผ๋กœ ์„ค์ •ํ•œ๋‹ค. 2. imageView์˜ borderWidth๋ฅผ ์›ํ•˜๋Š” ๋งŒํผ ์„ค์ •ํ•œ๋‹ค. 3. borderColor๋ฅผ ์„ค์ •ํ•œ๋‹ค. ์ด๋ฅผ ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•ด ๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋œ๋‹ค. ๋‚˜๋Š” ๊ฐ ์ด๋ฏธ์ง€์˜ ํฌ๊ธฐ๋ฅผ width, height ๊ฐ€ ๊ฐ๊ฐ 120 ์ธ ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ๋งŒ๋“ค์—ˆ๊ธฐ ๋•Œ๋ฌธ์— cornerRadius๋ฅผ 60์œผ๋กœ ๊ณ ์ •ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋งŒ์•ฝ heigt์˜ ๊ธธ์ด๊ฐ€ ๊ฐ๊ฐ ๋‹ค๋ฅด๋‹ค๋ฉด height / 2 ๋ฅผ ํ™œ์šฉํ•ด์„œ๋„ cornerRadius ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด..
22.07.04ใ…ฃ ์•ฑ์˜ ๊ตฌ์กฐ์™€ ๋™์ž‘ ์›๋ฆฌ & iOS ์˜ ํŠน์ง• & Xcode ์ฃผ์š” ๊ธฐ๋Šฅ ์•ฑ์˜ ๊ตฌ์กฐ์™€ ๋™์ž‘์›๋ฆฌ ์•ฑ์€ ํฌ๊ฒŒ ํ™”๋ฉด(Scene), ๊ธฐ๋Šฅ(Logic), ๋ฐ์ดํ„ฐ(Data) ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. 'ํ™”๋ฉด'์€ ๋ง ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ์„ ์‚ฌ์šฉํ•  ๋•Œ ๋ณด๊ฒŒ ๋˜๋Š” ํ™”๋ฉด์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. '๊ธฐ๋Šฅ'์€ ์ด๋ผ๋Š” ์•ฑ์—์„œ ์‚ฌ์šฉ์ž์˜ ์œ„์น˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ๋‹ฌ์ด ๊ฐ€๋Šฅํ•œ ์Œ์‹์ ์„ ํŒ๋‹จํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ๋ณด์ด์ง€ ์•Š์ง€๋งŒ ์•ฑ์„ ๋™์ž‘ํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๋ถ€๋ถ„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ '๋ฐ์ดํ„ฐ'๋Š” ์•ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์˜๋ฏธํ•˜๋Š”๋ฐ, ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๋ฐฉ์‹์—๋Š” ํ˜ผ์ž ์‚ฌ์šฉํ•˜๋Š” ์ผ๊ธฐ ์•ฑ๊ณผ ๊ฐ™์ด ์•ฑ ๋‚ด๋ถ€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹๊ณผ ์ธ์Šคํƒ€๊ทธ๋žจ๊ณผ ์œ ํŠœ๋ธŒ์™€ ๊ฐ™์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์ด ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๋ฐฉ์‹์ด ์žˆ์Šต๋‹ˆ๋‹ค. iOS ์˜ ํŠน์ง• iOS๋Š” 4๊ฐ€์ง€์˜ ๋…ํŠนํ•˜๋ฉด์„œ๋„ ์ฃผ์š”ํ•œ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 1...
[Programmers] ํŒŒ์ผ๋ช… ์ •๋ ฌ ํ•ด์„ค ์ฝ”๋“œ def solution(files): ans = [] head, number, tail = '','','' for file in files: for i in range(len(file)): # ์šฐ์„  ํŒŒ์ผ์„ head์™€ number๋กœ๋งŒ ๋‚˜๋ˆˆ๋‹ค. if file[i].isdigit(): head = file[:i] number = file[i:] # number์„ ๋‹ค์‹œ number์™€ tail๋กœ ๋‚˜๋ˆˆ๋‹ค. for k in range(len(number)): if not number[k].isdigit(): tail = number[k:] number = number[:k] break # ๋ฐฐ์—ด์— ๊ฐ๊ฐ์˜ ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ ํ›„ head,number,tail๊ฐ’์„ resetํ•œ๋‹ค. ans.append([head,numb..
[BOJ] ๊ตญํšŒ์˜์› ์„ ๊ฑฐ(#1417) ์ฝ”๋“œ n = int(input()) dasom = int(input()) arr = [int(input()) for _ in range(n-1)] cnt = 0 if n == 1: pass else: while dasom ์ฒ˜์Œ์— ๋‚˜๋Š” ์ˆœ์„œ๋Œ€๋กœ ๋ชจ๋“  ํ›„๋ณด์ž์˜ ๋“ํ‘œ์ˆ˜์—์„œ ํ•˜๋‚˜์”ฉ ๋นผ์„œ ๋‹ค์†œ์ด์˜ ๋“ํ‘œ์ˆ˜์— ๋”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•˜์˜€๋Š”๋ฐ, ์ƒ๊ฐํ•ด๋ณด๋‹ˆ ๋ฌธ์ œ์—์„œ ์ˆœ์„œ๋Œ€๋กœ ์‚ฌ๋žŒ์„ ๋งค์ˆ˜ํ•˜๋ผ๊ณ  ์ ํ˜€ ์žˆ์ง€ ์•Š์•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ ๊ทธ๋ƒฅ ์ตœ๋‹ค๋“ํ‘œ์ž์˜ ๋“ํ‘œ์ˆ˜๋ฅผ ๊ณ„์† ๋นผ์„œ ์ตœ๋‹ค ๋“ํ‘œ์ž๊ฐ€ ๋‹ค์†œ์ด ๋  ๋•Œ๊นŒ์ง€ ์‚ฌ๋žŒ์„ ๋งค์ˆ˜ํ•˜๋ฉด ํ•ด๊ฒฐ๋˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. 1417๋ฒˆ: ๊ตญํšŒ์˜์› ์„ ๊ฑฐ ์ฒซ์งธ ์ค„์— ํ›„๋ณด์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๊ธฐํ˜ธ 1๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ˆ˜, ๊ธฐํ˜ธ 2๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์ˆ˜, ์ด๋ ‡๊ฒŒ ์ด N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ..
[BOJ] ํ•œ๊ตญ์ด ๊ทธ๋ฆฌ์šธ ๋• ์„œ๋ฒ„์— ์ ‘์†ํ•˜์ง€ ์ฝ”๋“œ t = int(input()) imp = input().split('*') for _ in range(t): word = input() if len(word) >= len(imp[0]) + len(imp[1]): if word[0:len(imp[0])] == imp[0] and word[-1 * len(imp[1]):] == imp[1]: print("DA") else: print('NE') else: print('NE') ๋ถ„์„ > ๊ฑฐ์˜ ๋‹ค ํ’€์—ˆ๋Š”๋ฐ, imp[0]๊ณผ imp[1]์˜ ๊ธธ์ด๋ฅผ ๋”ํ–ˆ์„ ๋•Œ word์˜ ๊ธธ์ด๋ณด๋‹ค ์ž‘์€ ๊ฒฝ์šฐ๋ฅผ ๋†“์ณ์„œ ๊ณ„์† ๋ฌธ์ œ๋ฅผ ํ’€์ง€ ๋ชปํ•˜์˜€๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด, ab*bc ์ด๊ณ  word๊ฐ€ abc์ธ ๊ฒฝ์šฐ ์ด๋Š” ์˜ณ์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๋‚˜๋Š” ์ด ์ค‘๋ณต๋œ ๋ฌธ์ž๋ฅผ ์–ด๋–ป๊ฒŒ ์ฒ˜..
[BOJ] ๋“ฃ๋ณด์žก ์ฝ”๋“œ a,b = map(int,input().split()) arr = [input() for _ in range(a)] imp = [input() for _ in range(b)] arr = set(arr) imp = set(imp) result = sorted(list(arr&imp)) print(len(result)) for k in result: print(k) ๋ถ„์„ > ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ์˜€์ง€๋งŒ set ํ•จ์ˆ˜๋ฅผ ์“ฐ์ง€ ์•Š์œผ๋ฉด ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ setํ•จ์ˆ˜๋ผ๋ฆฌ ๊ฒน์น˜๋Š” ์›์†Œ๋งŒ ์ถ”์ถœํ•  ๋•Œ์—๋Š” sorted(list(a&b)) ๊ฐ™์ด ์ฝ”๋“œ๋ฅผ ์ ์œผ๋ฉด ๋œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. 1764๋ฒˆ: ๋“ฃ๋ณด์žก ์ฒซ์งธ ์ค„์— ๋“ฃ๋„ ๋ชปํ•œ ์‚ฌ๋žŒ์˜ ์ˆ˜ N, ๋ณด๋„ ๋ชปํ•œ ์‚ฌ๋žŒ์˜ ์ˆ˜ M์ด ์ฃผ์–ด์ง„๋‹ค. ์ด์–ด์„œ ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„..