ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

728x90
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

 

SW Expert Academy

SW ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์—ญ๋Ÿ‰ ๊ฐ•ํ™”์— ๋„์›€์ด ๋˜๋Š” ๋‹ค์–‘ํ•œ ํ•™์Šต ์ปจํ…์ธ ๋ฅผ ํ™•์ธํ•˜์„ธ์š”!

swexpertacademy.com

 

๋ฌธ์ œ ํ’€์ด

์ถœ์ฒ˜ : SW Expert Academy

 ์œ„์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํ–‰๋ ฌ์˜ ๋ชจ๋“  ํ•ฉ์„ ๊ตฌํ•˜๊ณ , ์ตœ๋Œ€ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ด๋Š” ํŒŒ์ด์ฌ์˜ ๊ฒฝ์šฐ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

trans_array = list(map(list, zip(*array)))

 ์œ„์˜ ํ–‰๋ ฌ์„ numpy๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์ „์น˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์œ„์™€ ๊ฐ™์ด ์ „์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ „์น˜์‹œํ‚ค๊ฒŒ ๋˜๋ฉด ํ–‰๋ ฌ์„ ํ•ฉ์„ ๋ณด๋‹ค ํŽธํ•˜๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

# โ†˜ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ
left_right = sum([array[i][i] for i in range(100)])
# โ†™ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ
right_left = sum([array[i][99 - i] for i in range(100)])

 ๋Œ€๊ฐ์„ ์˜ ํ•ฉ์€ ์ขŒ์ธก์—์„œ ์šฐ์ธก์œผ๋กœ ๋‚ด๋ ค์˜ค๋Š” ๊ฒฝ์šฐ [0][0], [1][1]๊ณผ ๊ฐ™์ด ์ ‘๊ทผํ•˜๋ฉด ๋œ๋‹ค. ์ด์™€ ๋‹ฌ๋ฆฌ ์šฐ์ธก์—์„œ ์ขŒ์ธก์œผ๋กœ ๋‚ด๋ ค์˜ค๋Š” ๊ฒฝ์šฐ์˜ ๋Œ€๊ฐ์„ ์€ [0][99], [1][98]๊ณผ ๊ฐ™์ด ์ ‘๊ทผํ•˜๋ฉด ๋œ๋‹ค.

 

์ฝ”๋“œ

for test_case in range(1, 11):
    answer = 0
    t = int(input())

    array = [list(map(int, input().split())) for _ in range(100)]
    # ํ–‰๋ ฌ ์ „์น˜
    trans_array = list(map(list, zip(*array)))
    # โ†˜ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ
    left_right = sum([array[i][i] for i in range(100)])
    # โ†™ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ
    right_left = sum([array[i][99 - i] for i in range(100)])

    for i in range(100):
        answer = max(answer, max(sum(array[i]), sum(trans_array[i])))

    answer = max(answer, max(left_right, right_left))

    print('#' + str(test_case), answer)

 

728x90
๋ฐ˜์‘ํ˜•

'๐Ÿ‘จโ€๐Ÿ’ป ์ฝ”๋”ฉํ…Œ์ŠคํŠธ > SWEA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

SWEA: 1221 GNS  (0) 2020.10.07
SWEA: 1220 Magnetic  (0) 2020.10.07
SWEA: 1215 ํšŒ๋ฌธ1  (0) 2020.10.07
SWEA: 1208 Flatten  (0) 2020.10.07
SWEA: 1206 View  (0) 2020.10.07
๋Œ“๊ธ€
๊ธ€ ๋ณด๊ด€ํ•จ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€