D. Multiples and Power Differences

오지는 지능문제였다.

$2 \mid (x+y)$ 인 $b_{y,x}$ 는 모두 $\prod_{i=1}^{16}i=720720$ 으로 채우자.

이제 나머지 칸들은 $720720+(a_{y,x})^4$ 로 채우면 된다.

$16^4 < 1000000-720720$ 이기 때문에 항상 가능하다.

void solve() {  
   int n, m;  
   cin >> n >> m;  
   vvi a(n, vi(m));  
   fv2(a);  
  
   vvi b(n, vi(m, -1));  
   int L = 720720;  
  
   for (int y = 0; y < n; y++) {  
      for (int x = 0; x < m; x++) {  
         if ((y + x) & 1) b[y][x] = L;  
         else b[y][x] = a[y][x] * a[y][x] * a[y][x] * a[y][x];  
      }  
   }  
  
   for (int y = 0; y < n; y++) {  
      for (int x = 0; x < m; x++) {  
         cout << b[y][x] << ' ';  
      }  
      cout << endl;  
   }  
}

Comments