개발/문제풀이

Code. 프로젝트 오일러. KR 1번. C++

ordi2016. 9. 18. 19:24

프로젝트 오일러 KR 1번.


1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면?



문제 출처.

http://euler.synap.co.kr/prob_detail.php?id=1



요점.

제목만 보아도 알 수 있듯이 그냥 그 배수 들을 다 더하면된다.

다만, 3과 5의 공배수를 2번 더하지 않도록 주의하자.




풀이 방법.

1) 이건 1부터 1000까지 훑어가면서 3으로 나누어 떨어지거나, 5로 나누어 떨어지면

이때까지 더했던 변수(sum)에 더한다.


2) "n(n+1)/2"  

즉 합의 공식을 이용해 

"3의 배수 합 + 5의 배수 합 - 15의 배수로 구하여도 된다."




코드 해석.

코드만 봐도 해석은 될 수 있을 것 같다.




요약.

겹치는 수에 대해 주의하자.

댓글

Pmon

뭐든 간에 기록하자

SNS

  • 페이스북아이콘
  • 카카오톡아이콘
  • 트위터아이콘

Lately Post

Lately Comment

VISITED

Today :

Total :