본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] 7의 개수

728x90

코드 힌트

  1. 숫자의 마지막 자릿수 추출하기:
    • n % 10 연산을 사용하면 숫자 n의 가장 오른쪽 자릿수를 얻을 수 있습니다. 예를 들어, 123 % 10은 3을 반환합니다.
  2. 숫자의 모든 자릿수를 순회하기:
    • 숫자를 10으로 나누는 n /= 10 연산을 통해 숫자의 자릿수를 한 단계씩 제거할 수 있습니다. 예를 들어, 123을 10으로 나누면 12가 됩니다.
  3. 숫자의 모든 자릿수에서 특정 조건 검사하기:
    • 반복문을 사용하여 각 자릿수를 검사할 수 있습니다. 예를 들어, while (n > 0) 반복문을 사용하면 n의 모든 자릿수를 검사할 수 있습니다.

예시 코드

아래는 숫자의 모든 자릿수를 확인하는 예시 코드입니다:

int n = 12345; // 예시 숫자

while (n > 0) {
    int digit = n % 10; // 마지막 자릿수 추출
    System.out.println(digit); // 자릿수 출력
    n /= 10; // 다음 자릿수를 위해 10으로 나누기
}

 

 


정답은 더보기 클릭

더보기
class Solution {
    public int solution(int[] array) {
        int result = 0; // '7'의 총 개수를 저장할 변수
        
        // 배열의 각 요소에 대해 반복합니다.
        for (int n : array) { // for-each 루프를 사용하여 배열의 각 요소를 n에 저장
            // 현재 숫자 n의 각 자릿수를 검사합니다.
            while (n > 0) { // 숫자 n이 0보다 큰 동안 반복
                // 현재 자릿수의 일의 자리 숫자를 확인합니다.
                if (n % 10 == 7) { // n의 마지막 자릿수가 7인지 확인
                    result++; // 7이 발견되면 result를 1 증가시킵니다.
                }
                // 마지막 자릿수를 제거하고 다음 자릿수를 확인합니다.
                n /= 10; // n을 10으로 나누어 마지막 자릿수를 제거합니다.
            }
        }
        
        // 최종적으로 발견된 7의 개수를 반환합니다.
        return result; // result에 저장된 7의 총 개수를 반환
    }
}
728x90