백준 1001번 - A-B

이설군·2022년 6월 9일
0

백준

목록 보기
3/52

문제

두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력

첫째 줄에 A-B를 출력한다.

예제 입력 1

3 2

예제 출력 1

1

제출

맞은 제출 1

let input = (readLine()!).split(separator:" ")
let A = Int(input[0])!
let B = Int(input[1])!
print (A-B)

오답노트

틀린 제출 1

print ((readLine()!).split{$0," "}.map{Int($0)}.reduce(0, +))

방금 오답을 해두고 기억이 제대로 나지않는 함수 ㄴㅇ0ㅇㄱ...!
split{$0," "}는 split{$0==" "}
map{Int($0)}는 map{Int($0)!}
reduce(0, +)는 -로 고침

print ((readLine()!).split{$0==" "}.map{Int($0)!}.reduce(0, -))

이것도 틀림.
reduce(0, -)를 reduce(0){-$0-$1}으로 바꿔야함. 근데 이 구조를 모르겠다 ㅎㅎ;
대충 0자리부터 1자리까지 - 인것같긴한데 정확하게 응용할 수 있을만큼 이해가 가진 않는다.

reduce(0) { (result: Int, element: Int) -> Int in
print("(result) + (element)")
를 응용해서
reduce(0){-$0-$1}으로 줄인건데. result두개를 $로 줄이고...아직은 생각보다 어렵다!

숏코딩

숏코딩 예제 1

print(readLine()!.split{$0==" "}.map{Int($0)!}.reduce(0){-$0-$1})

틀린 제출 1에 쓴 내용의 정답..ㅎㅎ! 어떻게 푼거지!

profile
티끌 모아 태산. 내가 가는 길이 옳은 길이라 믿으며 최선을 다해 걷는다.

0개의 댓글