結果
問題 | No.1988 Divisor Tiling |
ユーザー | kakeyamay |
提出日時 | 2022-07-05 11:44:13 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 464 bytes |
コンパイル時間 | 709 ms |
コンパイル使用メモリ | 91,236 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-12-15 15:29:23 |
合計ジャッジ時間 | 2,047 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 32 |
ソースコード
#include <bit> #include <iostream> #include <vector> int main() { unsigned N, H; std::cin >> N >> H; const auto W = N / H; std::vector res(H, std::vector(W, 0u)); for (auto i = 1u, c = 0u; i < N; ++i) if (N % i == 0) for (auto j = 0u; j < i; ++j, ++c) (not std::has_single_bit(W) ? res[c / W][c % W] : res[c % H][c / H]) = i; for (const auto& row : res) { for (const auto& e : row) std::cout << e << ' '; std::cout << '\n'; } }