본문 바로가기
코딩 테스트/Python_백준

[백준/Python] 15894번 수학은 체육과목 입니다 문제

by 모두의 케빈 2023. 4. 20.

■ 15894번 수학은 체육과목 입니다 문제

 

출처: 15894번 수학은 체육과목 입니다 문제

 

■ 코드 풀이

 

코딩을 하려고 왔는데, 등차수열 문제를 풀 줄은 상상도 못 했습니다. 이 문제는 등차수열을 안다면 쉽게 풀 수 있는 문제입니다. 우선 실선, 점선 상관없이 정사각형 전체 둘레는 정사각형의 개수 * 4입니다. 정사각형의 개수는 1,2,3,4,... 씩 증가하므로 n번째 줄까지의 정사각형 개수는 첫째항이 1이고 마지막항이 n인 등차수열의 합입니다.

실선의 둘레는 전체 둘레에서 점선 둘레를 빼주면 됩니다. 점선(T자) 주위로 3개의 정사각형이 있고, 각각 맞닿은 부분이 2번씩 중복되므로 점선(T자) 1개의 둘레는 4입니다. 따라서 점선의 둘레는 점선의 개수 * 4입니다. 이때, 점선은 정사각형의 개수보다 1개 적습니다. 따라서 n번째 줄까지의 점선 개수는 첫째항이 0이고 마지막항이 n-1인 등차수열의 합입니다.

따라서 실선의 둘레는 전체 둘레 - 점선 둘레이고 n*(n+1)/2 - n*(n-1)/2여서 결과적으로 4*n이 됩니다. 제가 참고한 등차수열 합 공식은 아래 링크를 넣어 두었습니다.

 

n = int(input())

print(4*n)

 

 

https://mathbang.net/609#gsc.tab=0

 

등차수열의 합, 등차수열의 합 공식

이번 글에서는 등차수열의 각 항을 더한 등차수열의 합을 구할 거예요. 아주 간단히 생각만 살짝 바꾸면 등차수열의 합 공식을 유도할 수 있어요. 방법은 어렵지 않으니까 그 원리를 금방 이해

mathbang.net

 

댓글