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
- JadenCase 문자열 만들기
- CASE문
- 알고리즘 #백준 #17073 #나무위의빗물
- 조건에부합하는중고거래댓글조회하기
- Java의특징
- IT기초상식 #서버리스
- 블록체인
- oracle
- 최댓값과최솟값
- 금융IT
- 미들웨어
- 명명규칙
- 변수의 타입
- IT기초지식
- 프로그래머스
- 약수의개수와덧셈
- 변수의 선언방법
- SQL
- 조건에 부합하는 중고거래 상태 조회하기
- 출력하기
- java
- restapi
- 웹통신의흐름
- 알고리즘
- Web #FrontEnd #CSS
- stateless
- Web #FrontEnd
- 코딩테스트
- TCP3 4 way handshake
- Web #Frontend #HTML
Archives
- Today
- Total
우당탕 개발 블로그
[알고리즘] 프로그래머스 | Lv1 | 약수의 개수와 덧셈 본문
class Solution {
public int solution(int left, int right) {
int answer = 0;
// left부터 right까지의 모든 수의 개수
int num = right - left + 1;
// left ~ right
for(int i=0; i<num; i++){
int tmp = left + i; //수
int cnt = 0; //약수의 개수
for(int j=1; j<=tmp; j++){
if(tmp % j == 0) cnt++; //약수이면 ++
}
if(cnt % 2 == 0){ //약수의 개수가 짝수인 수는 더하고
answer = answer + tmp;
} else{ //약수의 개수가 홀수인 수는 빼기
answer = answer - tmp;
}
}
return answer;
}
}
문제를 보고 최대공약수 문제인줄 알고 헤맸다ㅎ
단순하게 주어진 두 수와 두 사이의 수의 약수의 개수를 구하고
해당 수의 약수의 개수가 짝수이면 더하기, 홀수이면 빼기를 하면 되는 쉬운 문제였다.
반응형
'코딩테스트 > 알고리즘' 카테고리의 다른 글
[알고리즘] 프로그래머스 | Lv2 | JadenCase 문자열 만들기 (0) | 2023.09.10 |
---|---|
[알고리즘] 프로그래머스 | Lv2 | 최댓값과 최솟값 (2) | 2023.09.09 |
[알고리즘] 백준 | 17073 | 나무 위의 빗물 (0) | 2022.05.11 |