Q6 Multiples of 3 and 5

1104 단어

1. 문제 설명


2. 코드


3. 요약


1. 문제 설명:
Description:
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Finish the solution so that it returns the sum of all the multiples of 3 or 5 below the number passed in.
Note: If the number is a multiple of both 3 and 5, only count it once.
2. 코드:
** My Solution ** (내 방법은 진짜 chun, o)
  def solution(number): 
    numList = [] 

    for i in xrange(number): 
      if i%3==0 or i%5==0: 
        numList.append(i) 

    return sum(numList)

이 문제들은 모두 매우 간단하지만, 항상 가장 간단한 문법으로 완성할 수 없고, 항상 목록 유도식 쓰기에 익숙하지 않다** Other Solutions**
  • Best Practices
  • def solution(number): 
        return sum(x for x in range(number) if x % 3 == 0 or x % 5 == 0)
    
  • Clever
  •   def solution(number): 
        a3 = (number-1)/3 
        a5 = (number-1)/5 
        a15 = (number-1)/15 
        result = (a3*(a3+1)/2)*3 + (a5*(a5+1)/2)*5 - (a15*(a15+1)/2)*15 
        return result
    

    좋은 웹페이지 즐겨찾기