"꾸준하고 완벽한 한 걸음"

PS/Baekjoon Online Judge

[백준 20410] 추첨상 사수 대작전! (Easy) [Java]

kimyoungrok 2025. 3. 6. 04:10
728x90

문제

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

 


풀이

입력으로 주어지는 m, Seed, $X_1$, $X_2$에 대해

X1 = (a × Seed + c) % m

X2 = (a × X1 + c) % m

을 만족하는 a, c를 출력하면 된다.

a, c의 범위는 0 ~ m - 1 이며 m은 100이하의 소수이므로 완전 탐색으로 풀이가 가능하다.

        for (int a = 0; a < M; ++a) {
            for (int c = 0; c < M; ++c) {
                /*
                X1 = (a × Seed + c) % m
                X2 = (a × X1 + c) % m
                 */
                if ((a * seed + c) % M == X1 && (a * X1 + c) % M == X2) {
                    // Output
                    System.out.println(a + " " + c);
                    return;
                }
            }
        }

소스코드

https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/20410.java

728x90