카테고리 없음

1.14 코딩테스트 - 대각선 숫자 채우기

포포252 2024. 1. 14. 18:57

https://www.codetree.ai/missions/4/problems/diagonal-numbering?&utm_source=clipboard&utm_medium=text

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

 

수학적으로 봤을때 .. x+y =n 그래프를 연상했다. 

그림의 직선들은 행,열 값의 합이 일정하므로 이를 활용한다.

 

n,m= map(int,input().split())

arr= [[0 for _ in range(m)] 
        for _ in range(n)]

num =1 

for sum in range(n+m-1):
    for i in range(n):
        for j in range(m):
            if i+j == sum:
                arr[i][j]= num
                num +=1




# 출력 
for i in range(n):
    for j in range(m):
        print(arr[i][j], end=" ")
    print()

 

 

수학공부의 필요성을 새삼 느꼈던 문제다..