728x90
오늘의 문제는 백준
적어도 대부분의 배수
문제
문제 설명
100보다 작거나 같은 다섯개의 자연수가 주여졌을 때, 대부분의 배수를 출력하는 문제입니다.
여기서 대부분의 배수란 입력받는 다섯개의 수 중 적어도 세 개로 나누어지는 가장 작은 자연수를 의미합니다.
[입력]
첫째 줄에 다섯 개의 자연수가 주어집니다. 100보다 작거나 같은 자연수이고, 서로 다른 수입니다.
[출력]
첫째 줄에 적어도 대부분의 배수를 출력해야 합니다.
[입력 예시]
30 42 70 35 90
[출력 예시]
210
문제 풀이 시간
권장 풀이 시간은 60분이었고, 저는 30분이 걸렸습니다.
문제 접근 방식
5개의 자연수를 ArrayList에 입력받습니다. 이후 메서드를 사용하여 ArrayList를 탐색합니다. 이때, 1부터 시작하는 number 변수를 선언하여 조건에 맞는 값이 나올 때까지 탐색합니다. 현재 검사 중인 number가 ArrayList에 있는 값들로 나누어떨어지는지 확인합니다. 나누어떨어지면 cnt를 증가시키고, cnt가 3 이상이 되면 즉시 number를 반환합니다.
문제 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main
{
private static List<Integer> numArr = new ArrayList<>();
public static int multiple() {
int number = 1;
while(true) {
int cnt = 0;
for(int num : numArr) {
if(number % num == 0) {
cnt++;
}
}
if(cnt > 2) {
return number;
}
number++;
}
}
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
while (st.hasMoreTokens()) {
numArr.add(Integer.parseInt(st.nextToken()));
}
int answer = multiple();
System.out.println(answer);
}
}
이렇게 오늘 36일차 TIL을 작성해 보았습니다.
728x90
'🍪 Ect > #Study' 카테고리의 다른 글
[99클럽 코테 스터디] 38일차 TIL 그리디 (0) | 2024.08.28 |
---|---|
[99클럽 코테 스터디] 37일차 TIL 완전 탐색 (0) | 2024.08.27 |
[99클럽 코테 스터디] 35일차 TIL DFS/BFS (0) | 2024.08.25 |
[99클럽 코테 스터디] 34일차 TIL DFS/BFS (0) | 2024.08.24 |
[99클럽 코테 스터디] 33일차 TIL DFS/BFS (0) | 2024.08.23 |
댓글