한 문제 푸는데 드는 시간이 왜 자꾸 늘어나는지.. 간단하게 생각하면 되는데 복잡하게 생각하게 되는 것 같다.. 백준 10798 번 10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net 풀이 1 var result = Array(repeating: Array(repeating: "", count: 15), count: 5) for i in 0...4 { var word = readLine()!.map { String($0) } var lastIndexOfWord = word.count result[i].rep..
[##_revenue_list_upper##]
swift
[##_revenue_list_lower##]mapmap 은 이미 너무 많이 알다시피 forEach와 같은 기능을 합니다let arr = [1,2,3,4,5]arr.map { print($0, terminator: " ") }// 1 2 3 4 5 flatMap[정의]func flatMap(_ transform: (Self.Element) throws -> SegmentOfResult) rethrows -> [SegmentOfResult.Element] where SegmentOfResult : Sequence transform 파라미터에 self의 요소를 인자로 받아서 각 시퀀스요소의 변환을 한 다음 array를 리턴한다고 하네요. [ 쓰임 ] Apple 문서에서도 잘 나와 있지만 Flatmap은 다음 두 가지 역할을 합니다. 1. flatte..
백준 2566 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net FlatMap 을 사용하여 2차원 배열을 미분하는 방법과 (미분 이라는 표현이 적절할까..?) 이중배열을 돌려서 푸는 방법이 있었다. Flatmap Flatmap 에 대한 사용법은 여기에 정리해 뒀다. var matricks: [[Int]] = [] var result = 0 // 이차원 배열 생성 for _ in 1...9 { let line = readLine()!.split(separator: " ").map { Int($0)! } matricks.append(..
백준 2738번 이차원 배열을 사용해서 이중 반복문을 연습할 수 있는 문제였다. let input = readLine()!.split(separator: " ").map { Int($0)! } let n = input[0], m = input[1] var A: [[Int]] = [] var B: [[Int]] = [] var result: [[Int]] = [] // set A for _ in 0..