반응형
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 |
Tags
- 파이썬문자열함수
- SAA-C03
- 파이썬조합
- EC2란
- swagger 데코레이터
- 파이썬
- 파이썬 math 라이브러리
- aws자격증가이드
- Nest
- SAA
- aws
- 파이썬 프로그래머스
- 파이썬 최소공배수
- 파이썬 문자열 함수
- nest swagger 데코레이터
- 프로그래머스파이썬연습문제
- Nest.js
- 프로그래머스파이썬
- nest swagger
- 프로그래머스
- SAA자격증
- 파이썬 정렬
- 프로그래머스 파이썬 문제풀이
- Python
- examtopics
- itertools
- python sorted
- 프로그래머스 파이썬
- PHP8
- 파이썬 sorted
Archives
- Today
- Total
사진찍는 개발자📸👩💻
[프로그래머스/파이썬] 약수의 개수와 덧셈 본문
반응형
SMALL
[문제]
문제 설명
두 정수 left와 right가 매개변수로 주어집니다.
left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고,
약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ left ≤ right ≤ 1,000
[답안]
def solution(left, right):
answer = 0
for i in range(left, right + 1):
divisor = 0
for j in range(1, i + 1):
divisor += 1 if i % j == 0 else 0
if divisor % 2 == 0:
answer += i
else:
answer -= i
return answer
[풀이]
left를 시작값, right를 마지막 값으로 하는 for문을 만들고 각 값의 약수의 개수를 구하기 위해
내부에 for문을 하나 더 만들어 divisor약수의 개수를 구하고.
divisor 값이 짝수일 경우에는 더하고 홀수인 경우에는 빼는 if문을 만들어 답을 구하였다.
[맘에 드는 답안]
def solution(left, right):
answer = 0
for i in range(left,right+1):
if int(i**0.5)==i**0.5:
answer -= i
else:
answer += i
return answer
제곱수를 제외한 모든 정수들의 약수의 개수는 무조건 짝수라는 공식을 통해서 i의 값이 제곱근을 구하여 약수의 홀짝 여부를 판단했다.
[문제 풀어보기]
https://school.programmers.co.kr/learn/courses/30/lessons/77884
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
반응형
LIST
'develop > Python' 카테고리의 다른 글
[프로그래머스/파이썬] 부족한 금액 계산하기 (0) | 2024.08.09 |
---|---|
[프로그래머스/파이썬] 문자열 내림차순으로 배치하기 (0) | 2024.08.02 |
[프로그래머스/파이썬] 내적 (0) | 2024.08.02 |
[프로그래머스/파이썬] 수박수박수박수박수박수? (0) | 2024.08.02 |
[프로그래머스/파이썬] 가운데 글자 가져오기 (0) | 2024.08.02 |