주어진 각 회색 값이 세 채널 평균의 내림으로 나오는 RGB 조합의 수를 모두 곱해 10007로 나눈 나머지를 구한다.
보통6조합론수학동적 계획법아직 제출이 없습니다시간 제한1초메모리 제한512 MB미르코는 생일 선물로 디지털 카메라를 받은 뒤로 사진 찍기에 푹 빠졌다. 매일 컬러 사진을 수천 장 찍고, 집에 돌아오면 그 사진을 인쇄해 벽에 붙인다. 미르코의 프린터는 흑백이라서, 카메라에 저장된 사진은 인쇄하기 전에 회색 사진으로 바꿔야 한다.
카메라는 사진을 다음과 같이 저장한다. 행의 수 R과 열의 수 S에 이어 3×R×S개의 수가 사진 파일에 들어 있다. 각 픽셀은 빨강, 초록, 파랑의 세기를 나타내는 세 수로 적히고, 세기는 0 이상 255 이하의 정수다. 컬러 픽셀은 세 값을 평균해서 그에 해당하는 회색 명도로 바뀐다.
회색=⌊3빨강+초록+파랑⌋
위 식에서 ⌊x⌋는 내림을 뜻한다. 예를 들어 ⌊0.3⌋=0, ⌊1.5⌋=1, ⌊2.9⌋=2이다.
어느 날 슬라브코가 미르코의 작업실에 와서 놀렸다. "네 프린터가 서로 다른 컬러 사진을 아주 많이 똑같이 인쇄한다는 걸 너는 모르는구나!" 미르코는 그 수가 얼마인지 알고 싶어졌다. 정확히 말하면, 위 식에 따라 주어진 회색 사진으로 바뀌는 컬러 사진이 몇 개인지 세려고 한다. 이 수가 매우 클 수 있으므로 10007로 나눈 나머지를 구한다.
첫째 줄에 회색 사진의 행의 수 R과 열의 수 S가 주어진다. (1≤R≤1000, 1≤S≤1000)
다음 R개의 줄에는 각각 정수 xr,s가 S개씩 주어진다. (0≤xr,s<256) 이 수는 각 픽셀의 회색 명도다.
주어진 회색 사진이 되는 서로 다른 컬러 사진의 개수를 10007로 나눈 나머지를 출력한다.