만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

수열과 쿼리 HY

면접 대비

시간 제한2초메모리 제한1024 MB

요약
길이 N인 수열 A의 각 원소를 m으로 나눈 나머지 중 최솟값과 최댓값을 질의마다 구하는 문제입니다.
난이도

보통10점 중 5점

유형
배열, 수학, 정수론
정답자
아직 제출이 없습니다

문제

길이가 NN인 수열 A1A_1, A2A_2, ⋯\cdots, ANA_N이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오.

  • mm: A1 mod mA_1 \bmod m, A2 mod mA_2 \bmod m, ⋯\cdots, AN mod mA_N \bmod m 중 최솟값과 최댓값을 출력하라. (1≤m≤300 000)(1 \le m \le 300\,000)

입력

첫째 줄에 수열의 길이 NN과 쿼리의 개수 QQ가 공백으로 구분되어 주어진다. (1≤N,Q≤300 000)(1 \le N, Q \le 300\,000)

둘째 줄에 NN개의 정수 A1A_1, A2A_2, ⋯\cdots, ANA_N이 공백으로 구분되어 주어진다. (0≤Ai≤300 000)(0 \le A_i \le 300\,000)

셋째 줄부터 QQ개의 줄에 걸쳐 위에서 설명한 쿼리가 한 줄에 하나씩 주어진다.

출력

QQ개의 줄마다 각 쿼리에서 구한 최솟값과 최댓값을 공백으로 구분하여 출력한다.

예제1

  1. 예제 1

    입력
    10 6
    9 55 2 4 26 37 81 16 34 46
    1
    5
    6
    7
    9
    12
    
    예상 출력
    0 0
    0 4
    1 4
    2 6
    0 8
    1 10