trang chủ / bài tập / cheese24 / lời giải

Khối Phô Mai Của FJ

Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.
Tác giả: huunguyenhuunguyen

Lời giải: Khối Phô Mai Của FJ

Hướng tiếp cận

Theo dõi số khối phô mai còn lại trên mỗi đường thẳng song song với các trục tọa độ.

Nhận xét quan trọng

Viên gạch 1×1×N chỉ có 3 hướng đặt: song song với trục x, y, hoặc z. Với mỗi hướng, viên gạch chiếm trọn một hàng N ô liên tiếp. Viên gạch đặt được khi và chỉ khi toàn bộ N ô trên hàng đó đã bị cắt hết.

Thuật toán

Duy trì 3 mảng 2D kích thước N×N:

  • xy[x][y]: số ô phô mai còn lại trên đường song song trục z qua (x,y)
  • xz[x][z]: số ô còn lại trên đường song song trục y qua (x,z)
  • yz[y][z]: số ô còn lại trên đường song song trục x qua (y,z)

Khi cắt ô (x,y,z): giảm 3 bộ đếm tương ứng. Mỗi khi bộ đếm về 0, tăng đáp án thêm 1.

Độ phức tạp

  • Thời gian: O(N2+Q)
  • Bộ nhớ: O(N2)

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0