(1).백준 2756번 다트는 다트를 두 사람이 던졌을 때 승자를 구해야 하는 문제였는데

조건이 좀 특이해서 확인을 더 해야 했지만 각각의 테스트케이스를 분리했고

테스트케이스 내부 1,2,3회 4,5,6회를 j를 기준으로 구분해서 a/b 사람에게 점수를 넣어줬고

삼항연산자 내부 삼항연산자를 통해서 조건들을 처리했다.

const input = `2
-9 0 0 -4.5 -2 2 9 0 0 4.5 2 -2
-19.0 19.0 0 0 0 0 3 3 6 6 12 12`.split('\n').map(el => el.split(' ').map(Number))

const result = []

for(let i = 1 ; i < input.length ; i++){
    let sumA = 0
    let sumB = 0
    for(let j = 0 ; j < input[i].length ; j+=2){
        const [x, y] = input[i].slice(j,j+2)
        let point = 0
        if((x**2 + y**2) <= 9){
            point = 100
        }
        else if((x**2 + y**2) <= 36){
            point = 80
        }
        else if((x**2 + y**2) <= 81){
            point = 60
        }
        else if((x**2 + y**2) <= 144){
            point = 40
        }
        else if((x**2 + y**2) <= 225){
            point = 20
        }
        
        if(j < 5){
            sumA += point
        }
        else{
            sumB += point
        }
    }

    result.push(`SCORE: ${sumA} to ${sumB}, ${sumA == sumB ? 'TIE' : `PLAYER ${sumA > sumB ? 1 : 2} WINS`}.`)
}

console.log(result.join('\n'))

'회고' 카테고리의 다른 글

[개발일지] -598  (0) 2025.02.20
[개발일지] -597  (0) 2025.02.19
[개발일지] -595  (0) 2025.02.17
[개발일지] - 594(주말)  (0) 2025.02.16
[개발일지] - 593(주말)  (0) 2025.02.15

+ Recent posts