Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- dynamic programming
- Tree
- two pointers
- Number Theory
- greedy
- hash table
- Binary Search
- Class
- simulation
- bit manipulation
- java
- 파이썬
- Matrix
- database
- 자바
- 코딩테스트
- 코테
- string
- Math
- Stack
- Data Structure
- Counting
- sorting
- Binary Tree
- Method
- SQL
- array
- geometry
- 구현
- implement
Archives
- Today
- Total
코린이의 소소한 공부노트
[LeetCode/Easy] 2148. Count Elements With Strictly Smaller and Greater Elements 본문
코딩테스트 풀이/JAVA
[LeetCode/Easy] 2148. Count Elements With Strictly Smaller and Greater Elements
무지맘 2023. 1. 13. 21:361. Input
1) 정수 배열 nums
2. Output
1) nums의 요소 중 자기 다음으로 큰 수와 자기 다음으로 작은 수가 모두 있는 요소의 개수
3. Constraint
1) 1 <= nums.length <= 100
2) - 10^5 <= nums[i] <= 10^5
4. Example
Input: nums = [11,7,2,15] -> Output: 2
설명:
- 11 다음으로 큰 수는 15, 11 다음으로 작은 수는 7이다.
- 7 다음으로 큰 수는 11, 7 다음으로 작은 수는 2이다.
- 2 다음으로 큰 수는 7, 2 다음으로 작은 수는 없다.
- 15 다음으로 큰 수는 없고, 15 다음으로 작은 수는 11이다.
- 조건을 만족하는 숫자는 11과 7이므로 2를 반환한다.
5. Code
1) 첫 코드(2022/07/07)
import java.util.*;
int n = nums.length;
if(n==1)
return 0;
Arrays.sort(nums);
int max = nums[n-1];
int min = nums[0];
for(int i=1 ; i<nums.length ; i++){
if(nums[i]==min) n--;
else break;
}
for(int i=nums.length-2 ; i>0 ; i--){
if(nums[i]==max) n--;
else break;
}
return n>0 ? n-2 : 0;
'코딩테스트 풀이 > JAVA' 카테고리의 다른 글
[LeetCode/Easy] 2160. Minimum Sum of Four Digit Number After Splitting Digits (0) | 2023.01.13 |
---|---|
[LeetCode/Easy] 2154. Keep Multiplying Found Values by Two (0) | 2023.01.13 |
[LeetCode/Easy] 2138. Divide a String Into Groups of Size k (0) | 2023.01.13 |
[LeetCode/Easy] 2129. Capitalize the Title (0) | 2023.01.13 |
[LeetCode/Easy] 2124. Check if All A's Appears Before All B's (0) | 2023.01.13 |