[Swift] 홀짝 구분하기 / LV.0, 181944, 프로그래머스

문제: 자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 “n is even"을, 홀수이면 “n is odd"를 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181944 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181944) 제한사항: 1 ≤ n ≤ 1,000 풀이: let a = Int(readLine()!)! let resultString = a % 2 == 0 ? "\(a) is even" : "\(a) is odd" print(resultString) Ternary operator(삼항 연산자) 사용해서 문제를 해결 하였습니다. 입련된 수를 2로 나눈 나머지가 0인지 확인하여 짝수인지 확인할 수 있습니다. ...

June 29, 2023 · 1 min · Sobamemil

[Swift] 문자열 돌리기 / LV.0, 181945, 프로그래머스

문제: 문자열 str이 주어집니다. 문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181945 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181945) 제한사항: 1 ≤ str의 길이 ≤ 10 풀이: readLine()?.forEach { print($0) } 가로로 제시된 문자열을 세로로 하나씩 출력하면 되는 문제입니다. 문자열을 하나하나 순회하며 출력해주면 됩니다. 저는 forEach 문법을 사용해서 문자열을 하나씩 출력해 주었습니다. ...

June 22, 2023 · 1 min · Sobamemil

[Swift] 문자열 붙여서 출력하기 / LV.0, 181946, 프로그래머스

문제: 두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다. 입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181946 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181946) 제한사항: 1 ≤ str1, str2의 길이 ≤ 10 풀이: print(readLine()!.components(separatedBy: [" "]).joined().replacingOccurrences(of: " ", with: "")) 두 문자열 사이의 공백을 제거하고 출력하면 되는 문제입니다. 방법은 아주 많겠지만 한 줄로 해결해 보았습니다. ...

June 20, 2023 · 1 min · Sobamemil

[Swift] 덧셈식 출력하기 / LV.0, 181947, 프로그래머스

문제: 두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요. a + b = c https://school.programmers.co.kr/learn/courses/30/lessons/181947 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181947) 제한사항: 1 ≤ a, b ≤ 100 풀이: let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! } let (a, b) = (n[0], n[1]) let result = a + b print("\(a) + \(b) = \(result)") // 또는 // print(a, "+", b, "=", a + b) 문자열을 포맷에 맞춰 출력하는 문제입니다. 문자열에 직접 ()을 사용해서 변수를 출력할 수도 있고, 아래 주석처럼 콤마(,)로 나눠서 출력할 수도 있습니다. ...

June 20, 2023 · 1 min · Sobamemil

[Swift] 대소문자 바꿔서 출력하기 / LV.0, 181949, 프로그래머스

문제: 영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181949 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181949) 제한사항: 1 ≤ str의 길이 ≤ 20 str은 알파벳으로 이루어진 문자열입니다. 풀이: let line = readLine()! let resultString = line.map { character in if character.isLowercase { return character.uppercased() } else { return character.lowercased() } }.joined() print(resultString) // 또는 // print(readLine()?.map { $0.isLowercase ? $0.uppercased() : $0.lowercased() }.joined() ?? "") 입력 받은 각 문자 하나하나가 대문자인지 소문자인지 판단해서 반대로 출력하면 되는 문제입니다. ...

June 19, 2023 · 1 min · Sobamemil

[Swift] 문자열 반복해서 출력하기 / LV.0, 181950, 프로그래머스

문제: 문자열 str과 정수 n이 주어집니다. str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181950 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181950) 제한사항: 1 ≤ str의 길이 ≤ 10 1 ≤ n ≤ 5 풀이: let inp = readLine()!.components(separatedBy: [" "]).map { $0 } let (s1, a) = (inp[0], Int(inp[1])!) let resultString: String = { var string: String = "" for _ in 0..<a { string += s1 } return string }() print(resultString) // 또는 // let resultString = String(repeating: s1, count: a) // print(resultString) 문자열을 n 번 반복해서 이어 붙이면 되는 문제입니다. ...

June 19, 2023 · 1 min · Sobamemil

[Swift] a와 b 출력하기 / LV.0, 181951, 프로그래머스

문제: 정수 a와 b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181951 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181951) 제한사항: -100,000 ≤ a, b ≤ 100,000 풀이: let n = readLine()!.components(separatedBy: [" "]) let (a, b) = (n[0], n[1]) print("a = \(a)\nb = \(b)") // 또는 // print("a =", a) // print("b =", b) 두 가지의 정수를 공백 기준으로 나눈 후, 형식에 맞게 출력 해주면 되는 문제입니다. ...

June 18, 2023 · 1 min · Sobamemil

[Swift] 문자열 출력하기 / LV.0, 181952, 프로그래머스

문제: 문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181952 [프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/181952) 제한사항: 1 ≤ str의 길이 ≤ 1,000,000 str에는 공백이 없으며, 첫째 줄에 한 줄로만 주어집니다. 풀이: 입력 받은 문자열을 그대로 출력해주면 되는 문제입니다. print(readLine() ?? "") readLine 함수는 optional을 return 하므로 ?? 연산자(nil 병합 연산자 / coalescing operator)를 사용해 줍니다. ...

June 18, 2023 · 1 min · Sobamemil

크러스컬 알고리즘 구현 2 (붕괴법칙을 적용한 방법)

프로그램 개요 : C 언어를 사용한 크러스컬 알고리즘(Kruskal Algorithm) 구현. 붕괴법칙을 적용하지 않은 크러스컬 알고리즘. 붕괴법칙을 적용한 크러스컬 알고리즘 프로그램 구조 및 설계: 이전 글과 이어지는 포스팅입니다. 프로그램의 구조와 설계 방법은 아래 링크에서 보실 수 있습니다. 2021.04.09 - [알고리즘] - 크러스컬 알고리즘 구현 1 (붕괴법칙을 적용하지 않은 방법) [크러스컬 알고리즘 구현 1 (붕괴법칙을 적용하지 않은 방법) 프로그램 개요 : C 언어를 사용한 크러스컬 알고리즘(Kruskal Algorithm) 구현. 붕괴법칙을 적용하지 않은 크러스컬 알고리즘. 붕괴법칙을 적용한 크러스컬 알고리즘 입력 파일 : 프로그램 실행 결과 : ...

April 9, 2021 · 10 min · Sobamemil