티스토리 뷰

728x90

thinking

시작점과 끝점을   인덱스  로 접근했다 !

중간지점(mid)까지 간격이 한칸씩 커지다, 중간지점 이후 한칸씩 작아지도록 코드를 구성했다.

 

코드

T = int(input())

for tc in range(1, T+1):
    N = int(input())
    a = [list(map(int, input())) for _ in range(N)]
    ans = 0  # output 변수

    # s: 시작포인트, e: 끝포인트
    s, e = N // 2, N // 2
    for i in range(N):
        for j in range(s, e+1):
            ans += a[i][j]
        # 행의 인덱스가 mid 전까지는 s-e 간격 늘리고 mid 이후로는 간격 줄임
        if i < N // 2:
            s -= 1
            e += 1
        else:
            s += 1
            e -= 1

    print("#{} {}".format(tc, ans))

 

댓글