trang chủ / bài tập / leastround

Đường đi ít số 0 nhất

Đề bài

Mô tả

Cho một bảng vuông kích thước N×N gồm các số nguyên không âm.

Một đường đi bắt đầu ở ô góc trên bên trái, kết thúc ở ô góc dưới bên phải, và tại mỗi bước chỉ được di chuyển sang ô bên phải hoặc ô bên dưới ô hiện tại.

Hãy tìm đường đi sao cho tích của tất cả các số nằm trên đường đi đó có ít chữ số 0 ở tận cùng nhất.

Lưu ý bảng có thể chứa số 0. Nếu đường đi chứa ít nhất một ô mang giá trị 0 thì tích bằng 0, và số 0 được viết là "0" nên có đúng 1 chữ số 0 ở tận cùng.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên N là kích thước của bảng.
  • N dòng tiếp theo, mỗi dòng chứa N số nguyên mô tả các phần tử của bảng.

Dữ liệu ra

  • Dòng đầu tiên in ra số chữ số 0 ở tận cùng ít nhất có thể đạt được.
  • Dòng thứ hai in ra đường đi tương ứng dưới dạng một xâu gồm 2N2 ký tự, trong đó ký tự D nghĩa là đi xuống dưới và ký tự R nghĩa là đi sang phải.

Nếu có nhiều đường đi cùng đạt kết quả tối ưu, in ra một đường đi bất kỳ trong số đó.

Ràng buộc

  • 2N1000
  • 0ai,j109

Ví dụ

Input Output Giải thích
3
1 2 3
4 5 6
7 8 9
0
RRDD
Đường đi RRDD qua các ô 1,2,3,6,9 có tích 324, không có chữ số 0 ở tận cùng. Đáp án DDRR (qua 1,4,7,8,9, tích 2016) cũng được chấp nhận.
3
4 10 5
10 9 4
6 5 3
1
RDRD
Đường đi RDRD qua các ô 4,10,9,4,3 có tích 4320, tận cùng đúng một chữ số 0. Không có đường đi nào cho tích không chia hết cho 10.
3
10 10 10
10 0 10
10 10 10
1
DRDR
Mọi đường đi tránh ô 0 đều đi qua 5 ô mang giá trị 10, cho tích 105 với 5 chữ số 0 ở tận cùng. Đường đi qua ô 0 cho tích 0, chỉ có 1 chữ số 0 ở tận cùng nên tốt hơn.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0