백준 10952번 - A+B - 5

이설군·2022년 6월 20일
0

백준

목록 보기
19/52

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

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)

입력의 마지막에는 0 두 개가 들어온다.

출력

각 테스트 케이스마다 A+B를 출력한다.

예제 입력 1

1 1
2 3
3 4
9 8
5 2
0 0

예제 출력 1

2
5
7
17
7

제출

맞은 제출 1

while true {
	let i = readLine()!.split{$0==" "}.map{Int($0)!}
	if i[0]==0 && i[1]==0 {
    	break
    }
    print(i[0]+i[1])
}

오답노트

틀린 제출 1

ver i: Int
while true {
	i = readLine()!.split{$0==" "}.map{Int($0)!}
	if i[0]==0 && i[1]==0 {
    	break
    }
    print(i[0]+i[1])
}

배열이라 i를 Int로 선언하면 안되고 [Int]식으로 선언했어야함. 내부에서 바로 let i =으로 선언 가능

숏코딩

숏코딩 예제 1

while let l=readLine()?.split(separator: " ").map({Int($0)!}).reduce(0, +),l>0{print(l)}

reduce 함수를 이용

숏코딩 예제 2

while(true){let i=readLine()!.split{$0==" "}.map{Int($0)!}.reduce(0,+);if i != 0{print(i)}else{break}}

reduce 함수를 똑같이 이용하기는 하였는데, 아래의 if문은 참고할만한 내용인것같다.

if i != 0{
	print(i)
}else{
	break
 }
}

숏코딩 예제 3

while true {
    let num = readLine()!.split(separator:" ").map{Int($0)!}
    if num == [0,0]{
        break
    }
    print(num[0] + num[1])
}

num == [0,0]의 방법이 있다는걸 알게 된 예제

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

0개의 댓글