| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- leetcode
- 위니펙
- C++
- MATLAB
- Plotting
- 온라인석사
- machine learning
- mpnp
- EOI
- 알고리즘
- 딥러닝
- LAA
- 코딩테스트
- 방통대
- Deep learning
- LV1
- 개발자
- 조지아텍
- 컴퓨터과학과
- cpp
- zeros
- 방송통신대학교
- 프로그래머스
- 기본
- omscs
- 매트랩
- 머신러닝
- 캐나다 영주권
- 주정부이민
- 선형대수
Archives
- Today
- Total
Byte by Byte
프로그래머스) 월간코드챌린지2_약수의 개수와 덧셈 c++ 본문
다른 사람의 풀이에서 가장 좋아요를 많이 받은 분의 코드를 공부하고, 필사해보았다.
핵심
1. 짝수여부를 bit연산자 & 1 로 판단.
2. 재귀호출 사용.
#include <string>
#include <vector>
using namespace std;
int sign(int x, int count = 0) {
for (int i = 1; i <= x; i++) if(x % i == 0) count++;
return count & 1 ? -1 : 1;
}
int solution(int left, int right) {
return left > right ? 0 : sign(left) * left + solution(left + 1, right);
}
'개발 로그 > 알고리즘' 카테고리의 다른 글
| 프로그래머스) 최댓값과 최솟값 c++ (0) | 2021.09.13 |
|---|---|
| 프로그래머스) 문자열 내 마음대로 정렬하기 c++ (0) | 2021.09.04 |
| 프로그래머스) 비밀지도 c++ (카카오코테1차) (0) | 2021.09.03 |
| 프로그래머스) 문자열 내 p와 y의 개수 c++ (0) | 2021.09.03 |
| 프로그래머스) 문자열 다루기 기본 c++ (0) | 2021.09.03 |