Skip to content

Commit a727ad4

Browse files
authored
Merge pull request #838 from sir-gon/develop
Develop
2 parents fbf8da0 + 137a43b commit a727ad4

File tree

11 files changed

+18
-17
lines changed

11 files changed

+18
-17
lines changed

src/hackerrank/implementation/migratoryBirds.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ function migratoryBirds(arr: number[]): number {
1717
for (const bird of arr) {
1818
console.debug(`bird ${bird}`);
1919

20-
if (!map[bird]) {
21-
map[bird] = 1;
22-
} else {
20+
if (map[bird]) {
2321
map[bird] += 1;
22+
} else {
23+
map[bird] = 1;
2424
}
2525

2626
console.debug(`bird = ${bird} ~> map[bird] = ${map[bird]}`);

src/hackerrank/interview_preparation_kit/dynamic_programming/max_array_sum.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@
44
*/
55

66
const bigIntMax = (...args: bigint[]): bigint =>
7-
args.reduce((m, e) => (e > m ? e : m), BigInt(0));
7+
args.reduce((m, e) => {
8+
const _e = BigInt(e);
9+
const _m = BigInt(m);
10+
return _e > _m ? _e : _m;
11+
}, BigInt(0));
812

913
function maxSubsetSum(arr: number[]): number {
1014
const arrCopy: bigint[] = arr.map((x: number): bigint => BigInt(x));

src/hackerrank/interview_preparation_kit/greedy_algorithms/angry_children.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ function maxMin(k: number, arr: number[]): number {
77
.map((x: number): number => x)
88
.sort((a: number, b: number): number => a - b);
99

10-
let result = sortedlist[sortedlist.length - 1] - sortedlist[0];
10+
let result = (sortedlist.at(-1) ?? 0) - sortedlist[0];
1111

1212
for (let i = 0; i < sortedlist.length - k + 1; i++) {
1313
const tmin = sortedlist[i];

src/hackerrank/interview_preparation_kit/greedy_algorithms/minimum_absolute_difference_in_an_array.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ function minimumAbsoluteDifference(arr: number[]): number {
77
.map((x: number): number => x)
88
.sort((a: number, b: number): number => b - a);
99

10-
let result = Math.abs(sortedNums[sortedNums.length - 1] - sortedNums[0]);
10+
let result = Math.abs((sortedNums.at(-1) ?? 0) - sortedNums[0]);
1111

1212
for (let i = 0; i < sortedNums.length - 1; i++) {
1313
const aValue = sortedNums[i];

src/hackerrank/interview_preparation_kit/sort/ctci_bubble_sort.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,9 @@ const SEPARATOR = '\n';
77
class SortableGroup {
88
group: number[];
99

10-
count: number;
10+
count = 0;
1111

1212
constructor(group: number[]) {
13-
this.count = 0;
1413
this.group = group;
1514
}
1615

src/hackerrank/interview_preparation_kit/sort/ctci_comparator_sorting.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,5 @@ export default {
5353
comparatorSortingPrint
5454
};
5555

56-
export { Player, SortablePlayer, comparatorSorting, comparatorSortingPrint };
56+
export { Player } from './ctci_comparator_sorting.Player';
57+
export { SortablePlayer, comparatorSorting, comparatorSortingPrint };

src/hackerrank/interview_preparation_kit/stacks_and_queues/balanced_brackets.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,7 @@ function isBalancedCompute(s: string): boolean {
1212
for (const letter of s.split('')) {
1313
if (letter in pairs) {
1414
brackets.push(letter);
15-
} else if (
16-
brackets.length > 0 &&
17-
pairs[brackets[brackets.length - 1]] === letter
18-
) {
15+
} else if (brackets.length > 0 && pairs[brackets.at(-1) ?? 0] === letter) {
1916
brackets.pop();
2017
} else {
2118
return false;

src/projecteuler/problem0005.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ function _replaceMaximum(
3333
const element = _group.get(_element);
3434

3535
if (element) {
36-
_group.set(_element, count > element ? count : element);
36+
_group.set(_element, Math.max(count, element));
3737
} else {
3838
_group.set(_element, count);
3939
}

src/projecteuler/problem0007.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ function problem0007(_top: number): number {
2222

2323
console.log(`primes count: ${primes.length}`);
2424

25-
const answer = primes[primes.length - 1];
25+
const answer = primes.at(-1) ?? 0;
2626

2727
const cycles = i;
2828
console.log(`${_top} prime number is: ${answer} in ${cycles} cycles`);

src/projecteuler/problem0017.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ function problem0017(init: number, last: number): number {
1212

1313
for (let i = init; i <= last; i++) {
1414
word = numberToWord(i);
15-
replaced = word.replace(/[^a-z0-9]/gi, '');
15+
replaced = word.replaceAll(/[^a-z0-9]/gi, '');
1616

1717
acum += replaced.length;
1818

0 commit comments

Comments
 (0)