Hackerrank | 30 days of code | Day 19-Solution in c++| Interfaces-hackerrank-Solution-in-c++


Hackerrank | 30 days of code | Day 19-Solution in c++| Interfaces-hackerrank-Solution-in-c++

Hackerrank Solution 30-days-of-code

https://www.hackerrank.com/challenges/30-interfaces/problem
Day 19 Interfaces Solution in Cpp
#include <iostream> #include <vector> #include <cmath> #include <cstdio> #include <algorithm> #include <string> using namespace std; class AdvancedArithmetic{ public: virtual int divisorSum(int n)=0; }; class Calculator : public AdvancedArithmetic { public: int divisorSum(int n) { int sum = 0; if ( 1 == n ) { return 1; } for (int lo = 1, hi = n ; lo < hi ; ++lo) { if (n % lo) { continue; } sum += lo; hi = (n / lo); if (hi <= lo) { break; } sum += hi; } return sum; } }; int main(){ int n; cin >> n; AdvancedArithmetic *myCalculator = new Calculator(); int sum = myCalculator->divisorSum(n); cout << "I implemented: AdvancedArithmetic\n" << sum; return 0; }

Post a Comment

0 Comments