10871번 X보다 작은 수
- 배열을 만드는 방법은 여러가지 입니다, 아래 코드에서는 map 메서드를 사용하여 배열을 만들었습니다.
- result에 삼항연산자를 사용하여 line[1] 보다 작은 값을 추려내 forEach로 출력하였습니다.
let line = readLine()!.split(separator: " ").map({Int($0)})
let arr = readLine()?.split(separator: " ").map({Int($0)})
let result = arr?.filter({ return $0! < line[1]! ? true : false })
result?.forEach({ value in
print("\(value!)", terminator: " ")
})
10807번 개수 세기
- a에 주어진 정수를 담습니다.
- b에 a개만큼 입력받도록 문제가 의도하였지만 readLine과 split을 사용하여 a를 사용하지 않고도 해결할 수 있습니다.
- 이후 c에 정수를 입력받고 c보다 작은 값이 존재하면 +1를 하여 결과를 저장 후 출력합니다.
let a = Int(readLine()!)!
let b = readLine()?.split(separator: " ").map({Int($0)})
let c = Int(readLine()!)!
var num = 0
b!.forEach({ value in
if value! == c { num+=1 }
})
print(num)
2738번 행렬 덧셈
- 개인적으로 조금 까다루운 문제였습니다, C++을 하다 2차원 배열을 어떻게 만들어야 하는지 몰랐기 때문..
- var arr1: [[Int]] 처럼 2차원 배열 타입을 지정하고 repeating 에서 Array를 사용하여 0으로 채운 2차원 배열을 만듭니다.
- 각 2차원 배열에 여러 1차원 배열의 값 (readLine()!.split(separator: " ").map({Int($0)!}) 을 넣습니다
- arr1과 arr2를 더한 값을 담기 위한 result 이름의 0으로 채워진 2차원 배열값을 만듭니다.
- 2중 for문을 사용하여 저장된 값을 출력합니다.
let line = readLine()!.split(separator: " ").map({Int($0)!})
var arr1: [[Int]] = Array(repeating: Array(repeating: 0, count: line[1]), count: line[0])
var arr2: [[Int]] = Array(repeating: Array(repeating: 0, count: line[1]), count: line[0])
for i in 0..<line[0] {
arr1[i] = readLine()!.split(separator: " ").map({Int($0)!})
}
for i in 0..<line[0] {
arr2[i] = readLine()!.split(separator: " ").map({Int($0)!})
}
var result: [[Int]] = Array(repeating: Array(repeating: 0, count: line[1]), count: line[0])
for i in 0..<line[0] {
for j in 0..<line[1] {
result[i][j] = arr1[i][j] + arr2[i][j]
print(result[i][j], terminator: " ")
}
print()
}
5597번 과제 안 내신 분..?
- 입력은 28줄이므로 각각의 값을 배열에 저장합니다
- 1부터 30까지 저장된 값에서 contains 메서드를 사용하여 포함되어 있지 않으면 출력하여 해결할 수 있습니다.
var arr:[Int] = []
for _ in 1...28 {
arr.append(Int(readLine()!)!)
}
for i in 1...30 {
if !(arr.contains(where: { $0 == i })) {
print(i)
}
}
'Algorithm > Baekjoon' 카테고리의 다른 글
Swift 백준 10250 ACM 호텔 (0) | 2024.07.19 |
---|---|
swift 백준 11654, 2744, 2754, 27866, 9086 (문자열) (0) | 2024.07.16 |
swift 백준 2741, 10872, 10950, 2420, 2753 (반복) (0) | 2024.07.14 |
swift 백준 1330, 9498, 14681, 2420, 2753 (조건) (0) | 2024.07.13 |
swift 백준 10171, 10172, 10699, 2438, 25083 (출력) (0) | 2024.07.11 |