Skip to content
Programmingoneonone
Programmingoneonone
  • Engineering Subjects
    • Internet of Things (IoT)
    • Digital Communication
    • Human Values
  • Programming Tutorials
    • C Programming
    • Data structures and Algorithms
    • 100+ Java Programs
    • 100+ C Programs
    • 100+ C++ Programs
  • Solutions
    • HackerRank
      • Algorithms Solutions
      • C solutions
      • C++ solutions
      • Java solutions
      • Python solutions
    • Leetcode Solutions
    • HackerEarth Solutions
  • Work with US
Programmingoneonone
Programmingoneonone

HackerEarth Recursive Sums problem solution

YASH PAL, 31 July 202413 February 2026
In this HackerEarth Recursive Sums problem solution Little Bear has received a home assignment to find the sum of all digits in a number N. Following his affinity towards single-digit numbers, he intends to repeatedly compute the sum of all digits until the sum itself becomes a single-digit number.
 
Can you write a program to compute the final single-digit sum?
 
As the number N is very big, it is given in the following run-length encoded format – N is represented as a sequence of M blocks, where each block i (0 ≤ i < M) is represented by two integers – (len[i], d[i]). This implies that the digit d[i] occurs a len[i] number of times.
 
 
HackerEarth Recursive Sums problem solution

 

 

HackerEarth Recursive Sums problem solution.

#include <bits/stdc++.h>
using namespace std;

#define MOD 1000000007
#define pb(x) push_back(x)
#define mp(x,y) make_pair(x,y)
#define FF first
#define SS second
#define s(n) scanf("%d",&n)
#define sl(n) scanf("%lld",&n)
#define sf(n) scanf("%lf",&n)
#define ss(n) scanf("%s",n)
#define sc(n) {char temp[4]; ss(temp); n=temp[0];}
#define INF (int)1e9
#define LINF (long long)1e18
#define EPS 1e-9
#define maX(a,b) ((a)>(b)?(a):(b))
#define miN(a,b) ((a)<(b)?(a):(b))
#define abS(x) ((x)<0?-(x):(x))

typedef long long ll;
typedef unsigned long long LL;
typedef pair<int,int> PII;
typedef pair<LL,LL> PLL;
typedef pair<int,PII> TRI;
typedef vector<int> VI;
typedef vector<LL> VL;
typedef vector<ll> vl;
typedef vector<PII> VII;
typedef vector<TRI> VT;

int n;
int TEST_NO;
void precompute() {

}
void read() {
s(n);
ll ans = 0;
bool g0 = false;
for (int i = 0; i < n; ++i) {
ll len, d;
cin >> len >> d;
if(d > 0) g0 = true;
ans += (len * d) % 9;
if(ans >= 9) ans -= 9;
}
if(ans == 0 and g0) ans = 9;
cout << ans << endl;
}
void preprocess() {

}
void solve() {

}
int main() {
precompute();
int t;
s(t);
for(TEST_NO = 1; TEST_NO <= t; TEST_NO ++) {
read();
preprocess();
solve();
}
return 0;
}
 
 

Second solution

#include <iostream>
using namespace std;

#define ull unsigned long long

int cal(ull d) {
if (d < 10) return d;
int res = 0;
while (d > 0) {
res += d % 10;
d /= 10;
}
return cal(res);
}

int main() {
int cases, n, d;
for (scanf("%d", &cases); cases--; ) {
scanf("%d", &n);
ull sum = 0, len;
for (int i = 0; i < n; i++) {
cin >> len >> d;
sum += d * len;
sum = cal(sum);
}
sum = cal(sum);
cout << sum << endl;
}
return 0;
}
 
coding problems solutions HackerEarth HackerEarth

Post navigation

Previous post
Next post

Leave a Reply

Your email address will not be published. Required fields are marked *

Programmingoneonone

We at Programmingoneonone, also known as Programming101 is a learning hub of programming and other related stuff. We provide free learning tutorials/articles related to programming and other technical stuff to people who are eager to learn about it.

Pages

  • About US
  • Contact US
  • Privacy Policy

Practice

  • Java
  • C++
  • C

Follow US

  • YouTube
  • LinkedIn
  • Facebook
  • Pinterest
  • Instagram
©2026 Programmingoneonone | WordPress Theme by SuperbThemes