브루트포스

[백준] 1145. 적어도 대부분의 배수 풀이

hch06 2025. 2. 2. 17:16

https://www.acmicpc.net/problem/1145

 

1부터 차례대로 주어진 5개의 수로 나누었을 때 3개 이상 나머지가 0인 경우가 있는지 검사한다.
3개 이상 나머지가 0인 경우 반복 탈출 & 해당 값 출력

 


C

더보기
더보기
#include <stdio.h>

int checkMultiple(int a, int b, int c, int d, int e, int i){
    int cnt = 0;
    if(i % a == 0) cnt++;
    if(i % b == 0) cnt++;
    if(i % c == 0) cnt++;
    if(i % d == 0) cnt++;
    if(i % e == 0) cnt++;
    return cnt;
}

int main() {
    int a, b, c, d, e; scanf("%d %d %d %d %d", &a, &b, &c, &d, &e);

    int res;
    int i = 0; while(1){
        i++;
        if(checkMultiple(a, b, c, d, e, i) >= 3){
            res = i;
            break;
        }
    }
    printf("%d", res);
}

Python

더보기
더보기
def checkMultiple(a, b, c, d, e, i):
    cnt = 0
    if i % a == 0: cnt += 1
    if i % b == 0: cnt += 1
    if i % c == 0: cnt += 1
    if i % d == 0: cnt += 1
    if i % e == 0: cnt += 1
    return cnt

a, b, c, d, e = map(int, input().split())

i = 0
while 1:
    i += 1
    if checkMultiple(a, b, c, d, e, i) >= 3:
        res = i
        break
print(res)

 

'브루트포스' 카테고리의 다른 글

[백준] 1773. 폭죽쇼 풀이  (0) 2025.02.02
[백준] 1590. 캠프가는 영식 풀이  (0) 2025.02.02
[백준] 1526. 가장 큰 금민수 풀이  (0) 2025.02.02
[백준] 1075. 나누기 풀이  (0) 2025.02.02
[백준] 1065. 한수 풀이  (0) 2025.02.02