[HackerRank/C++] Find Digits
2023. 2. 6. 08:10ㆍ코딩테스트 해커랭크/Algorithms -Easy
정수 n이 주어질때 n을 각각의 자릿수의 값으로 나눌때 0으로 나누어 떨어지는 횟수를 return 한다
int findDigits(int n)
{
int result = 0;
string temp = to_string(n);
for(int i = 0; i < temp.size(); ++i)
{
int t = temp[i] - '0';
if (t == 0)
continue;
if (0 == n % t)
++result;
}
return result;
}
각각 자릿수를 구하는 방법은 string을 사용하는 방법이 편하므로 to_string으로 n을 문자열로 만들어 temp에 저장한다
temp의 각 인덱스 값은 '문자열'이므로 '0'의 값을 빼 실제 숫자 값으로 만들고, n을 이 값으로 나눴을때 나머지가 0인 경우 result에 카운트하고 return 한다
0으로 나누는 경우는 절대 있어서는 안되기 때문에 나누는 수가 0일 경우를 반드시 예외처리 한다
'코딩테스트 해커랭크 > Algorithms -Easy' 카테고리의 다른 글
| [HackerRank/C++] Sherlock and Squares (0) | 2023.02.07 |
|---|---|
| [HackerRank/C++] Append and Delete (0) | 2023.02.06 |
| [HackerRank/C++] Jumping on the Clouds: Revisited (0) | 2023.02.06 |
| [HackerRank/C++] Sequence Equation (0) | 2023.02.06 |
| [HackerRank/C++] Circular Array Rotation (0) | 2023.02.06 |