HackerRank Sherlock and Squares Solution Yashwant Parihar, April 16, 2023April 16, 2023 In this post, we will solve HackerRank Sherlock and Squares Problem Solution. Watson likes to challenge Sherlock’s math ability. He will provide a starting and ending value that describe a range of integers, inclusive of the endpoints. Sherlock must determine the number of square integers within that range.Note: A square integer is an integer which is the square of an integer, e.g. 1, 4, 9, 16, 25.Examplea = 24b = 49There are three square integers in the range: 25, 36 and 49. Return 3.Function DescriptionComplete the squares function in the editor below. It should return an integer representing the number of square integers in the inclusive range from a to b.squares has the following parameter(s):int a: the lower range boundaryint b: the upper range boundaryReturnsint: the number of square integers in the rangeInput FormatThe first line contains q, the number of test cases.Each of the next q lines contains two space-separated integers, A and b, the starting and ending integers in the ranges.Sample Input2 3 9 17 24 Sample Output2 0ExplanationTest Case #00: In range [3, 9], 4 and 9 are the two square integers.Test Case #01: In range [17, 24], there are no square integers.HackerRank Sherlock and Squares Problem SolutionSherlock and Squares C Solution#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> int main() { int t = 0, tc = -1; char tmp[23]; char cstr[101][23] = {{0}}; /* Get stdin */ while (t != tc) { memset(tmp, 0, sizeof(tmp)); fgets(tmp, sizeof(tmp), stdin); if (tc == -1) { tc = atoi(tmp); } else { if (tmp[strlen(tmp)-1] == '\n') { tmp[strlen(tmp)-1] = '\0'; } strcpy(cstr[t], tmp); t++; } } char *tok; int a = 0, b = 0, c = 0; for (t = 0; t < tc; t++) { tok = strtok(cstr[t], " "); a = atoi(tok); tok = strtok(NULL, " "); b = atoi(tok); if (sqrt(a) != (int)sqrt(a)) { a = (int)(pow(((int)sqrt(a))+1, 2)); } while (a <= b) { c++; a = (int)(pow(((int)sqrt(a))+1, 2)); } printf("%d\n", c); a = 0; b = 0; c = 0; } return EXIT_SUCCESS; }Sherlock and Squares C++ Solution#include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> using namespace std; int main() { std::vector<unsigned int> squares; for (int i = 1; i < 31655; ++i) { squares.push_back(i*i); } int n; cin >> n; for (int i = 0; i < n; ++i) { unsigned int a, b, c = 0; cin >> a >> b; auto lower = std::lower_bound(squares.begin(), squares.end(), a); auto upper = std::upper_bound(squares.begin(), squares.end(), b); cout << upper - lower << endl; } return 0; }Sherlock and Squares C Sharp Solutionusing System; using System.Collections.Generic; using System.IO; class Solution { static void Main(String[] args) { /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution */ int T=int.Parse(Console.ReadLine()); for(int i =1;i<=T;i++) { String inp=Console.ReadLine(); long []arr=Array.ConvertAll(inp.Split(null),s=>(long.Parse(s))); long first,last ; first=(long)Math.Sqrt(arr[0]); last=(long)Math.Sqrt(arr[1]); if(first*first!=arr[0]) { first=first+1; } Console.WriteLine(last-first+1); } } }Sherlock and Squares Java Solutionimport java.util.*; public class Sherlock_and_Squares { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int testCase = sc.nextInt(); while(testCase-->0){ int start =sc.nextInt(); int end =sc.nextInt(); int count=0; int square_start = (int)Math.ceil(Math.sqrt(start)); int square_end = (int)Math.ceil(Math.sqrt(end)); for(int i =square_start;i<=square_end;i++){ if(i*i<=end){ count++; } } System.out.println(count); } } }Sherlock and Squares JavaScript Solutionfunction processData(input) { var data = input.split("\n"); var T = data.shift(); data.forEach(function(list){ var range = list.split(" "); var min = Math.sqrt( parseInt(range[0], 10) ); var max = Math.sqrt( parseInt(range[1], 10) ); var diff = Math.floor(max) - Math.ceil(min) + 1; process.stdout.write(diff + "\n"); }); } process.stdin.resume(); process.stdin.setEncoding("ascii"); _input = ""; process.stdin.on("data", function (input) { _input += input; }); process.stdin.on("end", function () { processData(_input); });Sherlock and Squares Python Solutionimport math n = int(input()) for _ in range(n): temp = input().split() a = int(temp[0]) b = int(temp[1]) i = math.ceil(math.sqrt(a)) num = 0 while i * i <= b: num = num + 1 i = i + 1 print(num) other solutionsHackerRank Library Fine Problem SolutionHackerRank Cut the sticks Problem Solution c C# C++ HackerRank Solutions java javascript python CcppCSharpHackerrank Solutionsjavajavascriptpython