내가 겪은 정보
1365. How Many Numbers Are Smaller Than the Current Number 자바
배성인
2023. 4. 28. 15:13
배열에 담긴 숫자 꺼내서 그 숫자보다 작은거 몇갠지 구하는 문제임
Example 1:
Input: nums = [8,1,2,2,3]
Output: [4,0,1,1,3]
Explanation:
For nums[0]=8 there exist four smaller numbers than it (1, 2, 2 and 3).
For nums[1]=1 does not exist any smaller number than it.
For nums[2]=2 there exist one smaller number than it (1).
For nums[3]=2 there exist one smaller number than it (1).
For nums[4]=3 there exist three smaller numbers than it (1, 2 and 2).
Example 2:
Input: nums = [6,5,4,8]
Output: [2,1,0,3]
Example 3:
Input: nums = [7,7,7,7]
Output: [0,0,0,0]
자바 소스
import java.util.Arrays;
class Solution {
public static void main(String[] args) {
int[] ints = smallerNumbersThanCurrent(new int[]{8, 1, 2, 2, 3});
System.out.println(ints);
}
public static int[] smallerNumbersThanCurrent(int[] nums) {
int[] ints = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
int num = nums[i];
long count = Arrays.stream(nums).filter(value -> value < num).count();
ints[i] = (int) count;
}
return ints;
}
}