Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 성적 입력받기
- 합집합
- append()
- 귀도 반 로섬
- insert()
- 조건문 큰 수부터 입력받아야하는 이유
- 변수와 입출력
- 파이썬
- input()
- index()
- 변할 수 있는
- null # undefined
- 차집합
- 정보를 담을 수 있는 그릇
- 부스트캠프
- a=1
- 불리안
- pop()
- del()
- 리스트와 차이점
- false
- 딥러닝
- 조지 불
- 입출력
- 1일차
- 변수
- 그룹 # 그룹 해체 # 단축키 #figma #Figma
- html
- Java Script # == # === # difference # 차이
- Python
Archives
- Today
- Total
I about me
[Python] 약수의 개수와 덧셈 본문
문제 설명
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ left ≤ right ≤ 1,000
입출력 예
left | right | result |
13 | 17 | 43 |
24 | 27 | 52 |
문제풀이
1) left부터 right까지 숫자 돌리기
for num in range(left, right+1):
2) 1부터 num까지 약수인지 아닌지(그 i를 나누어서 나머지가 0이면 약수인 것 파악)
for i in range(1, num+1):
if num % i == 0:
count += 1
3) 그 count 수가 짝수이면 answer += num, 홀수이면 answer -= num
answer = 0
if count % 2 == 0: # 짝수이면
answer += num
else:
answer -= num
코드 합치기
def solution(left, right):
answer = 0
for num in range(left, right+1):
count = 0
for i in range(1, num+1):
if num % i == 0:
count += 1
if count % 2 == 0: # 짝수이면
answer += num
else:
answer -= num
return answer
'Algorithm > 프로그래머스' 카테고리의 다른 글
[Python] 문자열 다루기 기본 (0) | 2024.05.24 |
---|---|
[Python] 문자열 내림차순으로 배치하기 (0) | 2024.05.24 |
[Python] 귤 고르기 (0) | 2024.05.21 |
[Python] 영어 끝말잇기 (0) | 2024.05.21 |
[Python] 제일 작은 수 제거하기 (1) | 2024.05.21 |