[프로그래머스 자바] 가까운 1 찾기
문제
정수 배열 arr이 주어진다. arr은 0,1로 이루어진 배열이다.
정수 idx가 주어질때 인덱스값이 idx보다 크면서 배열의 값이 1인 가장 작은 인덱스를 찾아서 반환하는 solution 함수를 완성해 주세요.
단 그러한 인덱스가 없다면 -1을 반환합니다.
입출력
풀이
문제의 조건대로 배열 arr을 탐색하여 하고 현재 인덱스값이 idx이상일경우 인덱스값을 반환하면 된다.
나는 for문을 배열의 값으로 탐색하고 하나 탐색할 때마다 answer값을 +1을 해주면서 현재의 인덱스값을 확인하였다.
탐색하면 조건에 맞는 답이 나면 check =true 로 변경하고 반복문을 종료하였다 만약 check 값이 false 이면 우리가 원하는 조건의 답이 없다는 거니 -1을 answer에 넣어주고 answer을 리턴해준다.
코드
class Solution {
public int solution(int[] arr, int idx) {
int answer = 0;
boolean check=false;
for (int i: arr){
if (i==1&&idx<=answer){
check=true;
break;
}
answer++;
}
if (!check){
answer=-1;
}
return answer;
}
}
반응형
'자바 문제 풀이 > 기초문제' 카테고리의 다른 글
[프로그래머스 자바] 배열만들기 3 (1) | 2024.04.18 |
---|---|
[프로그래머스 자바] 리스트 자르기 (0) | 2024.04.16 |
[프로그래머스 자바]문자열 뒤집기 (0) | 2024.04.02 |
[프로그래머스 자바] 접미사 배열 (0) | 2024.03.23 |
[프로그래머스 자바]배열 만들기5 (0) | 2024.03.16 |