BAEKJOON, 코딩테스트 관련

4673번 셀프 넘버 - JAVA(브루트 포스, toCharArray(), Character.getNumericValue())

구름이팡팡 2022. 10. 11. 11:31
728x90

 

 

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Main {
	    public static void main(String[] args) throws IOException{	    	
		    List<Integer> notSelfNumber = new ArrayList<Integer>();	  
		     
		  	for(int n = 1; n <= 10000; n++) {
		  		notSelfNumber.add(Integer.valueOf(d(n)));
		  	}
		  	
		  	for (int i = 1 ; i <= 10000; i++) {
		  		if(!notSelfNumber.contains(i)) {
		  			System.out.println(i);
		  		}
		  	}
		  	
	    }
	    
	    public static int d(int n) {
	    	int result = n;
	    	char nSplit [] = String.valueOf(n).toCharArray();
	    	for(int i = 0; i < nSplit.length; i++) {
	    		int temp = Character.getNumericValue(nSplit[i]);
	    		result += temp;
	    	}
			return result;	    	
	    }
}

* 체크할 점

- 숫자를 자리수 별로 분할해서 int로 만드려면 toCharArray() 를 한 후 Character.getNumericValue() 로 다시 int 처리 해주면 된다.

728x90