[HackerRank/C++] Beautiful Days at the Movies
2023. 2. 6. 08:09ㆍ코딩테스트 해커랭크/Algorithms -Easy
릴리는 정수로 노는것을 좋아한다
정수 i, j 가 주어질 때 i, j를 포함하는 사이의 값중 해당 값의 자릿수를 뒤집은 값과 원래 값의 차이값을 구하고,
그 차이값이 k로 나눴을때 0으로 나누어 떨어진다면 그 날은 아름다운 날이며 영화를 보러 갈 것이다
i, j, k가 주어질때 릴리가 몇번 영화를 보러 갈 것인지 구한다
int beautifulDays(int i, int j, int k)
{
int result = 0;
while (i <= j)
{
int num = i;
string temp = to_string(num);
reverse(temp.begin(), temp.end());
num = stoi(temp);
if (0 == abs(i - num) % k)
++result;
++i;
}
return result;
}
릴리 노는게 좀 극혐이라 꿀밤 마렵다
첫번째로 i와 j를 포함하는 사이 값을 루프를 돈다
그리고 i를 num에 저장한 후 그 값을 algoright에 있는 함수를 이용하기 위해 to_string으로 string temp에 저장한다
이후 reverse 함수로 temp의 시작과 끝을 뒤집어 준 후 다시 stoi 함수로 그 값을 sum에 저장한다
만약 string을 이용하지 않을 것이라면 num의 값을 10의 배수로 나누며 나머지값을 각각 구해서 대입해줘야 한다..
이렇게 구한 값을 abs(i - num)으로 절댓값을 구해 k로 나눠 0으로 나누어 떨어진다면 result을 증가시킨다
모든 루프가 끝나면 result를 return 한다
'코딩테스트 해커랭크 > Algorithms -Easy' 카테고리의 다른 글
[HackerRank/C++] Save the Prisoner! (0) | 2023.02.06 |
---|---|
[HackerRank/C++] Viral Advertising (0) | 2023.02.06 |
[HackerRank/C++] Angry Professor (0) | 2023.02.06 |
[HackerRank/C++] Utopian Tree (0) | 2023.02.06 |
[HackerRank/C++] Designer PDF Viewer (0) | 2023.02.06 |