In this Breaking the Records problem you have Given the scores for a season, determine the number of times Maria breaks her records for most and least points scored during the season.
Breaking the Records Hacker Rank Problem Statement
Maria plays college basketball and wants to go pro. Each season she maintains a record of her play. She tabulates the number of times she breaks her season record for most points and least points in a game. Points scored in the first game establish her record for the season, and she begins counting from there.
Example
Scores are in the same order as the games played. She tabulates her results as follows:
Count Game Score Minimum Maximum Min Max 0 12 12 12 0 0 1 24 12 24 0 1 2 10 10 24 1 1 3 24 10 24 1 1
Given the scores for a season, determine the number of times Maria breaks her records for most and least points scored during the season.
Function Description
Complete the breakingRecords function in the editor below.
breakingRecords has the following parameter(s):
- int scores[n]: points scored per game
Returns
- int[2]: An array with the numbers of times she broke her records. Index is for breaking most points records, and index is for breaking least points records.
Input Format
The first line contains an integer , the number of games.
The second line contains space-separated integers describing the respective values of .
Constraints
Breaking the Records Hacker Rank Problem Solutions
I will Provide solution in Multiple programming languages for you. If you are not able to find the code in required language then please share in comments so that our team can help you.
Problem Solution in JavaScript
function breakingRecords(scores) {
let min = scores.at(0);
let max = scores.at(0);
let minCount = 0;
let maxCount = 0;
for (const score of scores.slice(1)) {
if (score < min) {
min = score;
minCount++;
}
if (score > max) {
max = score;
maxCount++;
}
}
return [maxCount, minCount];
}
Problem Solution in Python
def breakingRecords(scores):
most, least = scores[0], scores[0]
countmax, countmin = 0, 0
for i in scores:
if i > most:
most = i
countmax += 1
if i < least:
least = i
countmin += 1
return [countmax, countmin]
Problem Solution in C#
public static List<int> breakingRecords(List<int> scores)
{
List<int> res = new List<int>();
int maxValue = scores[0], minvalue = scores[0], maxCount = 0, minCount = 0;
foreach(int i in scores)
{
if(i>maxValue)
{
maxValue = i;
maxCount++;
}
else if(i<minvalue)
{
minvalue = i;
minCount++;
}
else
{
continue;
}
}
res.Add(maxCount);
res.Add(minCount);
return res;
}
}
Leave a Reply