(1).백준 16847번 Teenage Mutant는 유전적으로 일치하는지 확인해야 하는 문제였는데

기존 유전 정보를 가지고 일치하는 비율을 찾아줘야 했는데

이전 유전 정보들이 여러개일 수 있고 테스트케이스도 여러개라서 for문을 3중으로 써야 했다.

 

어쨌거나 str상태로 순서를 유지시키고 가져다가 비교한 다음

일치한 경우에는 해당 값을 배열에 true로 관리해서 필터로 일치 값을 구하는 방식으로 해결했다.

 

const input = `3
1 5
ABABA
AABBB
4 5
AAAAA
ABBBB
CACCC
DDADD
EEEAE
3 4
ABCD
DCBA
ADBC
CABD`.split('\n')

const result = []
let sets = 1

for(let i = 1 ; i < input.length ; i+= 2){
    const [x,y] = input[i].split(' ').map(Number)
    let count = 0
    let str = input[i+1]
    let list = []
    for(let j = i + 2 ; j < i + 2 + x ;  j++){
        for(let k = 0 ; k < y ; k++){
            if(str[k] == input[j][k]){
                list[k] = true
            }
        }
    }
    result.push(`Data Set ${sets}:
${y -list.filter(el => el).length}/${y}`)
    
    sets++
    i += x
}

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

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

[개발일지] - 889  (0) 2025.12.18
[개발일지] - 888  (0) 2025.12.17
[개발일지] - 887(주말)  (0) 2025.12.15
[개발일지] - 886(주말)  (0) 2025.12.14
[개발일지] - 885  (0) 2025.12.12

+ Recent posts