728x90

 

문제설명

입력 & 출력

 

나의 풀이

 

 

이번 문제는 5개의 정수가 주어졌을 때 5개 중 세 개로 나누어 지는 가장 작은 자연수를 구하는 문제입니다.

  • 제약 조건이 작음: 주어진 문제에서 숫자의 범위는 크지 않다.
  • 명확한 조건: 숫자를 1씩 증가시키면서 최소 3개의 숫자에 대해 나누어 떨어지는지 확인하는 조건이 명확

위 조건에 부합하여 브루트 포스 알고리즘을 사용하면 쉽게 해결할 수 있습니다.

 

대부분의 코드에 대한 설명은 주석을 달아놨습니다.

 

전체적인 접근 방식은 다음과 같습니다.

  1. 입력받기: 5개의 숫자를 입력받아 배열에 저장합니다.
  2. 숫자 증가: 1부터 시작하여 가능한 숫자를 하나씩 증가시킵니다.
  3. 나누어 떨어지는지 검사: 증가한 숫자가 배열의 숫자들 중 최소 3개의 숫자로 나누어 떨어지는지 검사합니다.
  4. 조건 만족 시 종료: 조건을 만족하는 숫자를 찾으면 반복을 종료하고 해당 숫자를 출력합니다.

 

 

 

 

참고❗️

 

[Algorithm] 완전 탐색, 브루트 포스: 가장 단순한 알고리즘(Brute Force) 알아보기

한 사람이 단어를 생각하고 다른 사람이 그 단어를 추측하는 만약 "단어 맞추기" 게임을 한다면 추측하는 사람은 가능한 모든 단어를 시도하여 맞출 때까지 계속합니다. 예를 들어 추측하는 사

pixx.tistory.com

 

[JAVA] 입출력, BufferedReader, StringTokenizer, StringBuilder 알아보기

Java로 코딩테스트를 보거나 입력을 사용해야 할 때 Scanner 클래스를 사용하면 편리하지만 속도가 느리다는 단점이 있습니다. 그렇기 때문에 속도가 빠른 BufferReader 클래스를 사용을 하면 시간복

pixx.tistory.com