1
0
Fork 0
mirror of https://gitlab.com/mfocko/LeetCode.git synced 2024-11-10 00:09:06 +01:00
LeetCode/cs/successful-pairs-of-spells-and-potions.cs

26 lines
691 B
C#
Raw Normal View History

public class Solution {
public int[] SuccessfulPairs(int[] spells, int[] potions, long success) {
int getSuccessful(long strength) {
var (left, right) = (0, potions.Length);
while (left < right) {
var mid = (left + right) / 2;
if (strength * potions[mid] >= success) {
right = mid;
} else {
left = mid + 1;
}
}
return potions.Length - left;
}
// Ensort potions to allow bisection.
Array.Sort(potions);
return spells
.Select(s => getSuccessful(s))
.ToArray();
}
}