#include #define rep(i, n) for (int i = 0; i < (n); i++) #define repr(i, n) for (int i = (n) - 1; i >= 0; i--) #define range(a) a.begin(), a.end() using namespace std; using ll = long long; int main() { cin.tie(nullptr); ios::sync_with_stdio(false); int N, K; cin >> N >> K; for (int k = 1;; k++) { if ((k / K) * K * K + (k % K) * (k % K) >= N) { vector ans(k, string(k, '.')); rep(l, k / K) { rep(i, K) rep(j, K) if (N > 0) { ans[l * K + i][l * K + j] = '#'; N--; } } rep(i, k % K) rep(j, k % K) if (N > 0) { ans[k / K * K + i][k / K * K + j] = '#'; N--; } cout << k << endl; rep(i, k) cout << ans[i] << endl; break; } } }