망나니 AWOS의 일상
article thumbnail

문제 요약 및 풀이

어떤 자연수(K)를 N으로 나누었을 때 나머지와 몫이 같은 자연수의 합을 구해라.

K % 3이라면 몫이 1이고 -- 나머지가 1인 4와, 몫이 2이고 -- 나머지가 2인 8이 나올 것이다. 두 자연수의 합은 12가 된다. 잘 이해가 안 되면 아래의 표로 설명하겠다.

K % N 나머지 K K의 배수
K % 2 1 1 3 3
K % 3 1 1 4 4
  2 2 8  
K % 4 1 1 5 5
  2 2 10  
  3 3 15  
K % 5 1 1 6 6
  2 2 12  
  3 3 18  
  4 4 24  
K % 6 1 1 7 7
  2 2 14  
  3 3 21  
  4 4 28  
  5 5 35  

위의 표처럼 나타내면 규칙이 보인다.

몫과 나머지는 1부터 N-1까지이고 K를 N으로 나누었을 때 K는 N+1의 배수인걸 알 수 있다.

 

N이 3일때, K는 4(N+1)의 배수가 되고 반복문으로 N-1번 돌려주면 합을 구할 수 있기 때문에 아래의 코드와 같이 짜면 된다.

result = []
N = int(input())
for i in range(1, N):
    result.append((N+1)*i)
print(sum(result))
profile

망나니 AWOS의 일상

@AWOS

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!