[ Programmers ] 가까운 1 찾기 ( java ) 55 / 124
📚 Table of Contents
문제
문제 설명
정수 배열 arr
가 주어집니다. 이때 arr
의 원소는 1 또는 0입니다. 정수 idx
가 주어졌을 때, idx
보다 크면서 배열의 값이 1인 가장 작은 인덱스를 찾아서 반환하는 solution 함수를 완성해 주세요.
단, 만약 그러한 인덱스가 없다면 -1을 반환합니다.
제한사항
- 3 ≤
arr
의 길이 ≤ 100'000arr
의 원소는 전부 1 또는 0입니다.
입출력 예
문제 풀이
코드 설명
코드의 목적:
이 코드는 주어진 배열(arr)의 특정 위치(idx)부터 시작하여 처음으로 1이 나오는 위치의 인덱스를 반환하는 기능을 가진 알고리즘입니다.
코드의 주요 구조:
- 클래스 정의: Solution이라는 이름의 클래스를 정의합니다.
- 메서드 정의: solution이라는 이름의 메서드를 정의합니다. 이 메서드는 정수 배열(arr)과 정수(idx)를 인자로 받아 처리합니다.
코드의 주요 알고리즘:
- 주어진 위치(idx)부터 배열을 순회합니다.
- 만약 배열의 원소가 1이면 해당 원소의 인덱스를 반환하고 종료합니다.
- 만약 배열을 전부 순회하였는데도 1이 없다면 -1을 반환합니다.
코드의 핵심:
- 반복문을 이용하여 특정 위치부터 배열을 순회합니다.
- 조건문을 이용하여 배열의 원소가 1인 경우를 찾아 처리합니다.
풀이
class Solution {
public int solution(int[] arr, int idx) {
int answer = -1;
// 주어진 위치부터 배열을 순회
for (int i = idx; i < arr.length; i++) {
// 만약 배열의 원소가 1이면 해당 원소의 인덱스를 반환
if (arr[i] == 1) {
answer = i;
break;
}
}
// 만약 배열을 전부 순회하였는데도 1이 없다면 -1을 반환
return answer;
}
}
'Coding > Programers' 카테고리의 다른 글
[ Programmers ] 첫 번째로 나오는 음수( ( java ) 57 / 124 (0) | 2024.01.03 |
---|---|
[ Programmers ] 리스트 자르기( ( java ) 56 / 124 (1) | 2024.01.03 |
[ Programmers ] 카운트 다운 ( java ) 54 / 124 (1) | 2024.01.03 |
[ Programmers ] 글자 지우기 ( java ) 53 / 124 (0) | 2024.01.02 |
[ Programmers ] 배열 만들기 1 ( java ) 52 / 124 (0) | 2024.01.02 |