https://school.programmers.co.kr/learn/courses/30/lessons/120912?language=java
7의 개수를 세어야 하는데 array의 원소의 조건에 따라 77이나 177, 777 같은 숫자들도 있을 수 있기 때문에 해당하는 7의 개수들도 다 세주어야 한다.
반복문을 활용해 array에 존재하는 모든 숫자들을 Integer.toString()을 활용해 String으로 형변환해서 저장한다.
그 후 해당 문자열들을 String.split("원하는 분할문자")를 활용해 분리해보자.
여기서는 ""만을 사용해서 분할하여 아래와같은 결과를 얻었다.
분리한 문자들은 String 배열 arr에 저장하였다.
반복문을 하나 더 사용하고 if문에서 조건식으로 a.contains("조건이될문자")을 활용해 배열 arr에 문자 "7"이 있다면 증감연산자를 활용해 answer을 1씩 증가시키고 리턴시키면 원하는 값을 얻을 수 있다.
class Solution {
public int solution(int[] array) {
int answer = 0;
for(int i=0; i<array.length; i++){
String str = Integer.toString(array[i]);
String[] arr = str.split("");
for(int j=0; j<arr.length; j++){
if(arr[j].contains("7")){
answer ++;
}
}
}
return answer;
}
}
'프로그래머스 문제풀어보기' 카테고리의 다른 글
[Lv.0] 잘라서 배열로 저장하기 (0) | 2023.03.21 |
---|---|
[Lv.0] 한 번만 등장한 문자 (0) | 2023.03.20 |
[Lv.0] 공 던지기 (0) | 2023.03.13 |
[Lv.0] 진료 순서 정하기 (0) | 2023.03.13 |
[Lv.0] 2차원으로 만들기 (0) | 2023.03.10 |
댓글