프로그래머스 1단계, 평균구하기 문제설명 프로그래머스 1단계 기초문제 중 하나인 평균구하기는 [Int] 타입의 배열 하나가 주어졌을때, 배열 내 값들의 평균값을 구하면 됩니다. 배열에 최소 1개 이상의 값이 있으므로 0으로 나눌때의 예외처리는 필요없겠습니다. 바로 swift 문제풀이 가겠습니다. 프로그래머스 1단계, 평균구하기 문제설명 reduce(into:), reduce 함수 사용하기 reduce(into:)를 사용해서 작성한 코드입니다. into: 인자로 0 초기값을 설정하고, 배열의 모든 숫자의 누적합을 저장하고, arr 크기로 나누어서 배열의 평균값을 반환합니다. reduce를 다른 형태로 활용해서 좀더 간결하게 풀 수도 있습니다. 위의 reduce(into:)방식 외에도 위와 같이 초기값을 0..
프로그래머스 레벨1 문제, 내적 문제설명 프로그래머스 레벨1문제, 내적문제는 동등한 크기의 배열 두개(a, b)가 주어졌을때 a, b의 내적을 구하는 문제입니다. 배열 동일위치 값을 각각 곱한 후 이들의 합을 구하는 간단한 문제입니다. 문제 설명대로 풀면 됩니다. 입출력 예 1번만 보겠습니다. a, b가 주어졌을때 반환할 값은 1 * -3 + 2 * -1 + 3 * 0 + 4 * 2 => 3이 됩니다. 해당 문제는 다양한 방식으로 풀수 있겠습니다. 저는 reduce를 사용해서 3줄, 1줄 버전으로 문제를 풀어보겠습니다. 프로그래머스 레벨1, 내적 swift 문제풀이 reduce(into:) 함수로 내적 구하기 reduce를 사용해서 작성해본 코드입니다. a의 계수가능범위를 indices로 반환받고, 그 ..
백준 1037번, 약수 문제설명 오늘은 백준의 1037번 문제, 약수를 풀어보겠습니다. 오늘 문제풀이는 문제의 풀이과정이 아닌, reduce를 이런식으로 사용할 수 있다는 것에 초점을 두고 진행하겠습니다. 시간 제한은 2초, 메모리 제한은 512MB입니다. 진짜 약수가 주어졌을때 진짜 약수들을 갖는 수를 구하는 문제입니다. 먼저, 진짜약수의 갯수를 첫줄에 입력받고, 그 갯수만큼 진짜갯수의 약수를 입력받습니다. 위의 경우, 진짜약수 4, 2를 갖는 수를 구하는 문제로 정답은 8입니다. (진짜약수에 1은 포함하지 않습니다.) 결론부터 말슴드리자면, 해당 문제는 주어지는 진짜약수의 최댓값, 최솟값을 활용해서 풀 수 있습니다. - 진짜약수의 갯수가 1개인 경우 : (진짜약수 최댓값) * (진짜약수 최댓값) - ..
오늘은 swift로 백준문제, 2688번 줄어들지않아 를 풀어보겠습니다. 해당 문제는 N자리의 줄어들지 않는 수의 모든 경우의 수를 구하는 문제입니다. 바로 문제를 살펴보겠습니다. swift 백준문제, 2688 줄어들지 않아 문제 설명 줄어들지 않아 문제는 골드5로, 중급 수준의 알고리즘 문제입니다. 시간제한은 1초로, 1억 번의 연산 미만의 복잡도의 알고리즘을 강구해야 합니다. 문의 설명은 위와 같습니다. N자리의 줄어들지 않는 수 경우의 수를 출력하면 됩니다. 예를들면, 줄어들지 않는 수는 0011, 0112, 0001, 1234 등이 있습니다. 이번 문제는 DP(Dynamic Programming)의 방법으로 풀 수 있습니다. 더욱이, 해당 문제는 T를 입력 받아 여러번의 쿼리 결과값을 얻어야 하는..
- Total
- Today
- Yesterday
- Collection
- SwiftUI
- 부스트코스
- publisher
- swift언어
- swift reduce
- 개발자문서
- swift string
- createML
- 프로토콜
- 알고리즘
- swift알고리즘
- 김프매매
- 스위프트
- 백준알고리즘
- ios
- 프로그래머스swift
- swift 문자열
- swift문제
- uikit
- Protocol
- 자연어처리
- swift 기초
- 컬렉션
- swift
- Swift 알고리즘
- 프로그래머스
- 알고리즘문제
- CoreML
- 백준swift
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |