오늘은 오랫만에 백준 문제를 하나 풀어봤습니다. solved.ac 기준, 골드5 티어 수준의 게리맨더링 문제입니다. 해당 문제는 모든 경우의 수에 대해 BFS, DFS 등의 탐색을 활용해서 N개의 구역 중 완벽하게 2개 선거구으로 나뉘는 경우에 한해 두 구역 인구수가 최솟값인 경우를 찾는 문제였습니다. 바로 제 소스코드를 보면서 문제풀이 보도록 하겠습니다. 백준알고리즘 17471번 문제, 게리맨더링 조합 및 완전탐색 swift 문제풀이 1) 문제 입력준비 및 변수 선언하기 먼저, 입력받기전, readLine() 입력 속도 최적화를 살짝 진행한 readInput 클로져 함수를 정의해두었습니다. 위 클로져는 양수값만 입력으로 들어올때 사용할 수 있습니다. 음수도 들어가는 경우, "-" 문자에 대한 flag ..
백준 1043번 거짓말 문제링크 ▼ 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net 백준 1043번 거짓말 문제 개요 해당문제는 solved.ac 골드 수준의 문제로 분류되고 있습니다. 내용을 보자면, 사람의 수 N과 지민이 이야기의 진실을 하는 사람 리스트, 각 파티에 오는 사람들의 번호가 주어질때, 과장된 이야기를 할 수 있는 파티의 최대 갯수를 반환하는 문제입니다. 지민이의 진실을 알고 있는 사람들에게는 절대 과장된 이야기를 하면 안됩니다. 지민이의 진실을 알지 못하는 사람에게만 과장된 얘기를 하기 위해서는 진실을..
오늘은 코딜리티 사이트에서 제공하는 easy 난이도 문제인 permCheck문제를 swift언어로 풀어보도록 하겠습니다. 코딜리티의 permCheck문제는 Codility Developer Training사이트의 Lesson4, Counting Elements 를 통해서 풀 수 있습니다. 해당 문제는 N 크기의 배열이 주어졌을때 해당 배열에 1 ~ N의 숫자가 한번씩 전부 들어있는지를 확인하여 전부 들어있을경우 1, 그 외에는 0을 반환하는 문제입니다. 자세한 문제설명은 코딜리티 사이트에서 확인하시기 바랍니다. 바로 swift언어를 통해 문제 풀어보도록 하겠습니다. 코딜리티 Codility easy문제, permCheck swift언어로 풀기 저는 딕셔너리를 사용해서 문제를 풀었습니다. 5행) 먼저 In..
오늘은 간단한 문자열 문제, 백준 8595번 히든넘버 문제를 풀어보겠습니다. 해당문제의 url은 boj.kr/8595입니다. 문자열 길이 N, 문자열 S가 주어졌을때, 주어진 문자열에 있는 숫자들의 합을 구하는 문제입니다. 단어에 숨어있는 숫자를 찾아서 그 합을 구하는 문제입니다. 각각의 히든넘버 사이에는 글자가 적어도 하나 있습니다. 또한 히든넘버는 6자리를 넘지 않도록 입력됩니다. 입력받는 단어의 길이는 최대 500만입니다. 위 예시를 보면, 주어진 문자열에 있는 히든넘버 합은 13 + 9 + 7 = 29가 됩니다. swift언어로 풀어보도록 하겠습니다. 1 ~ 2행) 저는 첫줄로 입력받는 문자열 길이값을 사용하지 않아서 _ 언더바로 입력값을 받았습니다. 이어서 입력받은 문자열 + "x" 의 문자열에..
- Total
- Today
- Yesterday
- swift문제
- swift언어
- 알고리즘문제
- 개발자문서
- uikit
- 프로그래머스swift
- createML
- 김프매매
- SwiftUI
- swift string
- 부스트코스
- 백준알고리즘
- swift
- 프로토콜
- swift 기초
- 프로그래머스
- Swift 알고리즘
- 백준swift
- 알고리즘
- publisher
- 스위프트
- swift reduce
- 컬렉션
- Collection
- Protocol
- swift알고리즘
- swift 문자열
- ios
- 자연어처리
- CoreML
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |