Skip to content

Commit e15ed9f

Browse files
solves largest number at least twice of each other
1 parent beadc5e commit e15ed9f

File tree

3 files changed

+44
-4
lines changed

3 files changed

+44
-4
lines changed

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# LeetCode Algorithms
22

3-
![problems-solved](https://img.shields.io/badge/Problems%20Solved-181/2081-1f425f.svg)
4-
![problems-solved-java](https://img.shields.io/badge/Java-181/2081-1abc9c.svg)
5-
![problems-solved-python](https://img.shields.io/badge/Python-181/2081-1abc9c.svg)
3+
![problems-solved](https://img.shields.io/badge/Problems%20Solved-182/2081-1f425f.svg)
4+
![problems-solved-java](https://img.shields.io/badge/Java-182/2081-1abc9c.svg)
5+
![problems-solved-python](https://img.shields.io/badge/Python-182/2081-1abc9c.svg)
66
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md)
77
[![cp](https://img.shields.io/badge/also%20see-Competitve%20Programming-1f72ff.svg)](https://github.com/anishLearnsToCode/competitive-programming)
88

@@ -205,7 +205,7 @@
205205
| 734 | [Sentence Similarity](https://leetcode.com/problems/sentence-similarity) | |
206206
| 744 | [Find Smallest Letter Greater Than Target](https://leetcode.com/problems/find-smallest-letter-greater-than-target) | [![Java](assets/java.png)](src/FindSmallestLetterGreaterThanTarget.java) [![Python](assets/python.png)](python/find_smallest_letter_greater_than.py) |
207207
| 746 | [Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs) | [![Java](assets/java.png)](src/MinCostClimbingStairs.java) [![Python](assets/python.png)](python/min_cost_climbing_stairs.py) |
208-
| 747 | [Largest Number at least twize of Others](https://leetcode.com/problems/largest-number-at-least-twice-of-others) | |
208+
| 747 | [Largest Number at least twize of Others](https://leetcode.com/problems/largest-number-at-least-twice-of-others) | [![Java](assets/java.png)](src/LargestNumberAtLeastTwiceOfOthers.java) [![Python](assets/python.png)](python/largest_number_at_least_twice_of_others.py) |
209209
| 748 | [Shortest Completing Word](https://leetcode.com/problems/shortest-completing-word) | |
210210
| 758 | [Bold Words in String](https://leetcode.com/problems/bold-words-in-string) | |
211211
| 760 | [Find Anagram Mappings](https://leetcode.com/problems/find-anagram-mappings) | |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
from typing import List, Tuple
2+
3+
4+
class Solution:
5+
def dominantIndex(self, nums: List[int]) -> int:
6+
largest, largestIndex = self.getMax(nums)
7+
for number in nums:
8+
if number != largest and 2 * number > largest:
9+
return -1
10+
return largestIndex
11+
12+
def getMax(self, array: List[int]) -> Tuple[int, int]:
13+
largest, largestIndex = -float('inf'), -1
14+
for index, element in enumerate(array):
15+
if element > largest:
16+
largest = element
17+
largestIndex = index
18+
return largest, largestIndex
+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
public class LargestNumberAtLeastTwiceOfOthers {
2+
public int dominantIndex(int[] nums) {
3+
int largestIndex = largestIndex(nums), largest = nums[largestIndex];
4+
for (int number : nums) {
5+
if (number != largest && 2 * number > largest) {
6+
return -1;
7+
}
8+
}
9+
return largestIndex;
10+
}
11+
12+
private int largestIndex(int[] array) {
13+
int largest = Integer.MIN_VALUE, largestIndex = -1;
14+
for (int index = 0 ; index < array.length ; index++) {
15+
if (array[index] > largest) {
16+
largest = array[index];
17+
largestIndex = index;
18+
}
19+
}
20+
return largestIndex;
21+
}
22+
}

0 commit comments

Comments
 (0)