다희의 코딩 성장일기

[정올 Begginer_Coder - 수학1] 1071.약수와 배수_자바JAVA 본문

Algorithm/정올

[정올 Begginer_Coder - 수학1] 1071.약수와 배수_자바JAVA

ilmiodiario 2020. 12. 13. 11:58

 

문제 :  정올 1071.약수와 배수

 

 

 

문제 링크jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=351&sca=2030

 


입출력

 

 

 


풀이

 

< 접근 방법 및 풀이 >

  • n 개의 배열중에 m의 약수를 구해 합을 더하고, m의 배수를 구해 배수의 합을 더한다.
  •  약수, 배수 구하는 건 아래 JAVA코드 보기.

< 주의할 점 >

  • 입력받은 m과 n개의 정수배열과 비교해서 약수의합, 배수의 합 구하는 것! 

 

JAVA코드

 

package 수학1;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class 약수와배수_1071 {

	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		int n = Integer.parseInt(in.readLine());
		int arr[] = new int [n];
		StringTokenizer st = new StringTokenizer(in.readLine());
		
		for (int i = 0; i < n; i++) {
			arr[i] = Integer.parseInt(st.nextToken());
		}
		
		int m = Integer.parseInt(in.readLine());
		
		int factor = 0, multiple = 0; //약수, 배수
		
		for (int i = 0; i < n; i++) {
			if( m % arr[i] == 0) factor += arr[i]; //약수의 합
			if( arr[i] % m == 0) multiple += arr[i]; //배수의 합
		}
		
		System.out.println(factor);
		System.out.println(multiple);
	}
}

 

 


REVIEW

 

 

약수, 배수 기초 잘 다지기!

Comments