[프로그래머스/C++] ㅡ LV1 - 정수 제곱근 판별
2021. 4. 4. 13:46ㆍ필요/코딩테스트(프로그래머스)
문제
programmers.co.kr/learn/courses/30/lessons/12947
풀이
#include <string>
#include <vector>
using namespace std;
bool solution(int x) {
bool answer = true;
int middle = x;
int digit = 0;
while (middle > 0) { // 자릿수 계산
digit += middle % 10;
middle /= 10;
}
if (x % digit != 0) {
answer = false;
}
return answer;
}
풀이
정수의 각 자릿수에 접근해야한다.
두가지 방법이 있다.
첫번째는 정수에 /와 % 연산을 사용하는 것이다.
두번째 방법은 정수를 문자열로 변환하여 자릿수에 접근하는 방법이다.
이렇게 정수로 입출력이 주어지는 경우 첫번째 방법이 더 효율적일 것이다.
'필요 > 코딩테스트(프로그래머스)' 카테고리의 다른 글
[프로그래머스/C++] ㅡ LV1 - 콜라츠 추측 (0) | 2021.04.04 |
---|---|
[프로그래머스/C++] ㅡ LV1 - 정수 제곱근 판별 (0) | 2021.04.03 |
[프로그래머스/C++] ㅡ LV1 - 정수 내림차순으로 배치하기 (0) | 2021.03.27 |
[프로그래머스/C++] ㅡ LV1 - 이상한 문자 만들기 (0) | 2021.03.27 |
[프로그래머스/C++] ㅡ LV1 - 시저암호 (0) | 2021.03.27 |