public int solution(int[] people, int limit) {
Arrays.sort(people);
int leftIdx = 0;
int rightIdx = people.length-1;
int count = 0;
while (leftIdx <= rightIdx) {
int small = people[leftIdx];
while (((limit - small) < people[rightIdx]) && leftIdx < rightIdx-- ) {
count++;
}
leftIdx++;
rightIdx--;
count++;
}
return count;
}
인덱스 활용으로 카운트 증가가 핵심
최저와 최대를 더했을 때, 무게 제한을 초과하면 카운트 증가가 핵심
정확성 테스트
정확성 테스트
테스트 1 〉 통과 (1.86ms, 52.2MB)
테스트 2 〉 통과 (1.26ms, 53MB)
테스트 3 〉 통과 (1.82ms, 54.5MB)
테스트 4 〉 통과 (1.57ms, 52.7MB)
테스트 5 〉 통과 (1.16ms, 53.5MB)
테스트 6 〉 통과 (0.84ms, 53.2MB)
테스트 7 〉 통과 (0.97ms, 53.2MB)
테스트 8 〉 통과 (0.49ms, 52.1MB)
테스트 9 〉 통과 (0.69ms, 52.5MB)
테스트 10 〉 통과 (1.62ms, 53.1MB)
테스트 11 〉 통과 (1.23ms, 52.9MB)
테스트 12 〉 통과 (1.50ms, 52.1MB)
테스트 13 〉 통과 (1.49ms, 53.9MB)
테스트 14 〉 통과 (0.85ms, 52.9MB)
테스트 15 〉 통과 (0.59ms, 52.8MB)
효율성 테스트
테스트 1 〉 통과 (10.51ms, 56.3MB)
테스트 2 〉 통과 (10.99ms, 56.1MB)
테스트 3 〉 통과 (9.72ms, 53.6MB)
테스트 4 〉 통과 (6.92ms, 53.8MB)
테스트 5 〉 통과 (8.09ms, 54.3MB)
public String solution(String number, int k) {
Arrays.sort(people);
int i = 0, j = people.length - 1;
for (; i < j; --j) {
if (people[i] + people[j] <= limit)
++i;
}
return people.length - i;
}
언제나 나은 답변은 존재,,,, 최소한의 인덱스 활용법
정확성 테스트
정확성 테스트
테스트 1 〉 통과 (1.60ms, 52.1MB)
테스트 2 〉 통과 (1.04ms, 53.4MB)
테스트 3 〉 통과 (1.80ms, 53.2MB)
테스트 4 〉 통과 (1.83ms, 54.4MB)
테스트 5 〉 통과 (1.43ms, 53.6MB)
테스트 6 〉 통과 (0.92ms, 53.1MB)
테스트 7 〉 통과 (1.00ms, 53MB)
테스트 8 〉 통과 (0.47ms, 52.9MB)
테스트 9 〉 통과 (0.48ms, 52.2MB)
테스트 10 〉 통과 (1.61ms, 53.4MB)
테스트 11 〉 통과 (1.82ms, 52.7MB)
테스트 12 〉 통과 (1.40ms, 53.1MB)
테스트 13 〉 통과 (1.57ms, 54MB)
테스트 14 〉 통과 (1.38ms, 52MB)
테스트 15 〉 통과 (0.52ms, 52.9MB)
효율성 테스트
테스트 1 〉 통과 (9.56ms, 56.4MB)
테스트 2 〉 통과 (9.77ms, 53.8MB)
테스트 3 〉 통과 (11.20ms, 53.7MB)
테스트 4 〉 통과 (7.25ms, 53.9MB)
테스트 5 〉 통과 (8.67ms, 54.6MB)
def solution(people, limit):
answer = 0
people.sort()
i = 0
j = len(people)-1
while i <= j:
if (people[i] + people[j]) <= limit:
i += 1
j -= 1
else:
j -= 1
answer += 1
return answer
정확성 테스트
정확성 테스트
테스트 1 〉 통과 (1.25ms, 10.3MB)
테스트 2 〉 통과 (1.16ms, 10.2MB)
테스트 3 〉 통과 (0.94ms, 10.3MB)
테스트 4 〉 통과 (0.83ms, 10.3MB)
테스트 5 〉 통과 (0.53ms, 10.2MB)
테스트 6 〉 통과 (0.27ms, 10.1MB)
테스트 7 〉 통과 (0.46ms, 10.2MB)
테스트 8 〉 통과 (0.04ms, 10.2MB)
테스트 9 〉 통과 (0.07ms, 10.2MB)
테스트 10 〉 통과 (0.89ms, 10.3MB)
테스트 11 〉 통과 (0.85ms, 10.2MB)
테스트 12 〉 통과 (0.72ms, 10.2MB)
테스트 13 〉 통과 (0.96ms, 10.3MB)
테스트 14 〉 통과 (1.12ms, 10MB)
테스트 15 〉 통과 (0.10ms, 10.2MB)
효율성 테스트
테스트 1 〉 통과 (8.90ms, 10.7MB)
테스트 2 〉 통과 (9.76ms, 10.5MB)
테스트 3 〉 통과 (8.65ms, 10.6MB)
테스트 4 〉 통과 (9.51ms, 10.6MB)
테스트 5 〉 통과 (8.57ms, 10.6MB)