๊ด€๋ฆฌ ๋ฉ”๋‰ด

Daehyunii's Dev-blog

๊ฒฉ์žํŒ ์ตœ๋Œ€ํ•ฉ(1,2์ฐจ์› ํƒ์ƒ‰) ๋ณธ๋ฌธ

๐Ÿ“š Language & CS knowledge/Algorithm (๊ธฐ์ดˆ๋ฌธ์ œํ’€์ด)

๊ฒฉ์žํŒ ์ตœ๋Œ€ํ•ฉ(1,2์ฐจ์› ํƒ์ƒ‰)

Daehyunii 2022. 8. 31. 23:50

๋ฌธ์ œ(์ถœ์ฒ˜ : ์ธํ”„๋Ÿฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ๊ฐ•์˜, ์ •๋ณด์˜ฌ๋ฆผํ”ผ์•„๋“œ)

5*5 ๊ฒฉ์žํŒ์— ์•„๋ž˜๋กธ ๊ฐ™์ด ์ˆซ์ž๊ฐ€ ์ ํ˜€์žˆ์Šต๋‹ˆ๋‹ค.

10 13 10 12 15
12 39 30 23 11
11 25 50 53 15
19 27 29 37 27
19 13 30 13 19

N*N์˜ ๊ฒฉ์žํŒ์ด ์ฃผ์–ด์ง€๋ฉด ๊ฐ ํ–‰์˜ ํ•ฉ, ๊ฐ ์—ด์˜ ํ•ฉ, ๋‘ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ ์ค‘ ๊ฐ€ ์žฅ ํฐ ํ•ฉ์„ ์ถœ๋ ฅํ•ฉ ๋‹ˆ๋‹ค.

โ–ฃ ์ž…๋ ฅ์„ค๋ช…
์ฒซ ์ค„์— ์ž์—ฐ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค.(1<=N<=50)
๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N์ค„์— ๊ฑธ์ณ ๊ฐ ์ค„์— N๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ์ž์—ฐ์ˆ˜๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ๋‹ค.

 

โ–ฃ ์ถœ๋ ฅ์„ค๋ช… ์ตœ๋Œ€ํ•ฉ์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

 

โ–ฃ ์ž…๋ ฅ์˜ˆ์ œ 1
5
10 13 10 12 15

12 39 30 23 11

11 25 50 53 15

19 27 29 37 27

19 13 30 13 19

 

โ–ฃ ์ถœ๋ ฅ์˜ˆ์ œ 1

155

 

Tip(๊ธ€๋กœ ์ž‘์„ฑํ•˜๊ธฐ์— ์ •๋ฆฌ๊ฐ€ ์–ด๋ ค์šด ๋‚ด์šฉ์ด ์žˆ์–ด ๋”ฐ๋กœ ์ •๋ฆฌํ•ด ๋†“์€ ์ข…์ด ๊ธ€์„ ์‚ฌ์ง„์œผ๋กœ ์˜ฌ๋ฆผ)

 

๋ฌธ์ œํ’€์ด

//์ •๋‹ต์„ ๋ณด๊ณ  ๋‹ค์‹œ ์ž‘์„ฑํ•œ ๋‹ต
function solution(char){
    let sum1 = 0;
    let sum2 = 0;
    let result = 0;
    let length = char.length;
    for(let i = 0 ; i < length ; i++){
        sum1 = 0;
        sum2 = 0;
        for(let j = 0 ; j < length ; j++){
            sum1 += char[i][j];
            sum2 += char[j][i];
        }
        result = Math.max(result, sum1, sum2);
    }

    sum1 = 0;
    sum2 = 0;
    for(let i = 0 ; i < length ; i++){
        sum1 += char[i][i];
        sum2 += char[i][length-i-1];
    }

    result = Math.max(result, sum1, sum2);
    return result;
}

let arr=[[10, 13, 10, 12, 15], 
         [12, 39, 30, 23, 11],
         [11, 25, 50, 53, 15],
         [19, 27, 29, 37, 27],
         [19, 13, 30, 13, 19]];
console.log(solution(arr));