반응형
https://school.programmers.co.kr/learn/courses/30/lessons/77884
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
package Programmers; public class 약수의개수와덧셈 { public static void main(String[] args){ 약수의개수와덧셈 T = new 약수의개수와덧셈(); int left = 13; int right = 17; T.solution(left, right); } public int solution(int left, int right) { int answer = 0; //약수의 개수가 짝수인것은 더하고 홀수인것은 빼자 //1. left ~ right 까지 for문을 돌면서 각각의 약수 개수를 구한다. for (int i = left; i <= right; i++) { int cnt = divisorCnt(i); //개수가 짝수면 더하고 홀수면 빼자 if(cnt % 2 == 0){ //짝수일경우 answer += i; }else{ //홀수일경우 answer -= i; } } return answer; } public int divisorCnt(int n){ int cnt = 0; for (int i = 1; i <= n; i++) { if(n % i == 0){ cnt ++; } } return cnt; } }
1. 풀이
1.1 ) divisorCnt 함수를 만든다.
-> 매개변수로 int 하나 받으면 약수의 개수를 return
1.2 ) For문 left ~ right 까지
- divisorCnt 에 left ~ right 까지 넣어보면서 cnt 를 리턴받아 짝수인지 홀수인지 구분하여 연산해준다.
반응형
'기타 > 알고리즘' 카테고리의 다른 글
[알고리즘] 프로그래머스 - 타겟넘버 LV02 Java (0) | 2023.07.04 |
---|---|
[알고리즘] 프로그래머스 - 쿼드 압축 후 개수세기 LV02 Java (0) | 2023.06.26 |
[알고리즘] 프로그래머스 - 최소직사강형 Lv1 Java (0) | 2023.05.29 |
[알고리즘] 프로그래머스 - 모음사전 Lv2 Java DFS (0) | 2023.05.27 |
[알고리즘] 프로그래머스 - 전력망을 둘로 나누기 Lv2 Java BFS (0) | 2023.05.25 |