- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- Firebase
- 연결리스트
- 백준
- 자료구조
- python
- C++
- 안드로이드
- 동적할당
- Java
- 파이썬
- 알고리즘
- android studio
- 구글 로그인
- 프로그래밍 입문
- firebase google
- 자바
- 프로그래머스
- sql
- 안드로이드 스튜디오
- 정렬
- til
- 코딩테스트
- oauth
- 공유대학
- 컴퓨터공학과
- 비주얼 베이직
- 배열
- 로그인
- C언어
Archives
코딩하는 해달이
[level 1] 약수의 개수와 덧셈 본문
문제 설명
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한 조건
- 1 ≤ left ≤ right ≤ 1,000
문제 이해
제곱근이 있으면 약수의 개수는 홀수이고 반대로 제곱근이 없으면 약수의 개수는 짝수이다.
알고리즘
1. 정수 left, right를 입력받는다.
2. 반복자 i를 선언한다.
3. i를 left부터 right까지 반복한다.
4. 만약 i의 제곱근이 정수이면 answer에서 뺀다.
5. 만약 i의 제곱근이 짝수이면 answer에 더한다.
풀이코드
#include <string>
#include <vector>
#include <cmath>
using namespace std;
int solution(int left, int right) {
int answer = 0;
for (int i = left; i <= right; i++) {
if (sqrt(i) - (int)sqrt(i) == 0) {
answer -= i;
}
else {
answer += i;
}
}
return answer;
}
https://school.programmers.co.kr/learn/courses/30/lessons/77884
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
반응형
'개인 공부 > 프로그래머스' 카테고리의 다른 글
[level 1] 체육복 (0) | 2022.08.02 |
---|---|
[level 1] 실패율 (0) | 2022.08.02 |
[level 1] 3진법 뒤집기 (0) | 2022.07.31 |
[level 1] 예산 (0) | 2022.07.30 |
[level 1] 두 개 뽑아서 더하기 (0) | 2022.07.30 |
Comments