2017년 11월 20일 월요일

[C++] Beautiful Days at the Movies

/*

https://www.hackerrank.com/challenges/beautiful-days-at-the-movies/problem


*/

#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;

int reverse(int n);     // make n reversed

int main() {
    int start,end,num;
    int temp,rev,count=0;
 
    cin >> start;
    cin >> end;
    cin >> num;
 
    for(int i=start;i<=end;i++){
        rev = reverse(i);

        temp = i - rev;
        if(temp<0)
            temp *= -1;
     
        if(temp % num == 0)
            ++count;
    }
 
    cout << count;
 
    return 0;
}

int reverse(int n){
    vector<int> arr;
 
    while(n){
        arr.push_back(n%10);   // split n to single digits
        n /= 10;
    }
 
    int size = arr.size();
 
    int number = 0;
    int tens;
 
    for(int i=0; i<size; i++) {
    tens=1;
        for(int k=i; k<size-1; k++) {
            tens *= 10;
        }
        number += (arr[i] * tens);  //put together all digits.
    }
 
    arr.clear();
 
    return number;
 
}

댓글 없음:

댓글 쓰기