코린이의 소소한 공부노트

[LeetCode/Easy] 2269. Find the K-Beauty of a Number 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 2269. Find the K-Beauty of a Number

무지맘 2023. 1. 16. 01:07

1. Input

1) 정수 num

2) 정수 k

 

2. Output

1) numk-beauty를 찾아 반환

// k-beauty를 찾는 방법

- num을 앞에서부터 k자리씩 끊어서 숫자를 본다.

- 그 숫자가 num의 약수일 때 k-beauty1씩 증가한다.

 

3. Constraint

1) 1 <= num <= 109

2) 1 <= k <= num의 자릿수

 

4. Example

Input: num = 430043, k = 2 -> Output: 2

설명: 430043을 앞에서부터 2자리씩 끊어서 본다.

- 43: 430043의 약수이다.

-   30: 약수가 아니다.

-     00: 약수가 아니다

-       04: 약수가 아니다.

-         43: 약수이다.

- 따라서 2를 반환한다.

 

5. Code

1) 첫 코드(2022/06/22)

int count = 0;
String s = num + "";

if(s.length() == 1)
    return 1;

for(int i=0 ; i<s.length()+1-k ; i++){
    int n = Integer.parseInt(s.substring(i,i+k));
    if(n!=0 && num%n==0)
        count++;
}

return count;