Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
관리 메뉴

으하하 공부일기

[SWEA] - 1945. 간단한 소인수분해 (D2) 본문

SWEA/D2

[SWEA] - 1945. 간단한 소인수분해 (D2)

0으하하0 2022. 4. 20. 19:09

[문제]

숫자 N은 아래와 같다.

N = 2a x 3b x 5c x 7d x 11e

N이 주어질 때 a, b, c, d, e 를 출력하라.

[제약 사항]
N은 2 이상 10,000,000 이하이다.

[입력]
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 번째 줄에 N 이 주어진다.

[출력]
출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다.
(t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)

문제 풀기

1945. 간단한 소인수분해

 


[풀이]

  • 2, 3, 5, 7, 11 으로 나눠질 경우 각각 a, b, c, d, e에 +1을 해준 후 출력
import java.util.Scanner;

class Solution {
	public static void main(String[] args) throws Exception {		
		Scanner sc = new Scanner(System.in);

		int t = sc.nextInt();
		
		for(int i=1; i<=t; i++) {			
			int a = 0;
			int b = 0;
			int c = 0;
			int d = 0;
			int e = 0;
			
			int n = sc.nextInt();
			
			while(n%2==0) {n /= 2; a++;}
			while(n%3==0) {n /= 3; b++;}
			while(n%5==0) {n /= 5; c++;}
			while(n%7==0) {n /= 7; d++;}
			while(n%11==0) {n /= 11; e++;}
			
			System.out.format("#%d %d %d %d %d %d\n", i, a, b, c, d, e);
		}
	}
}

'SWEA > D2' 카테고리의 다른 글

[SWEA] - 1948. 날짜 계산기 (D2)  (0) 2022.04.21
[SWEA] - 1946. 간단한 압축 풀기 (D2)  (0) 2022.04.20
[SWEA] - 1940. 가랏! RC카! (D2)  (0) 2022.04.20
[SWEA] - 1928. Base64 Decoder (D2)  (0) 2022.04.20
[SWEA] - 1926. 간단한 369게임 (D2)  (0) 2022.04.20