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

Khôi phục xâu nhị phân

Đề bài

Mô tả

Với một xâu nhị phân s (mỗi ký tự si là '0' hoặc '1'), người ta xét tất cả các cặp ký tự liên tiếp, tức là mọi xâu con độ dài 2. Với mỗi cặp như vậy, đếm số ký tự '1' trong cặp đó (giá trị này bằng 0, 1 hoặc 2).

Cho ba số:

  • n0: số cặp ký tự liên tiếp có đúng 0 ký tự '1';
  • n1: số cặp ký tự liên tiếp có đúng 1 ký tự '1';
  • n2: số cặp ký tự liên tiếp có đúng 2 ký tự '1'.

Hãy khôi phục một xâu nhị phân s bất kỳ phù hợp với ba giá trị n0,n1,n2 đã cho. Dữ liệu đảm bảo luôn tồn tại ít nhất một đáp án, và ít nhất một trong ba số n0,n1,n2 lớn hơn 0. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ví dụ, với s= "1110011110", các cặp liên tiếp là "11", "11", "10", "00", "01", "11", "11", "11", "10", tương ứng n0=1, n1=3, n2=5.

Dữ liệu vào

  • Dòng đầu chứa số nguyên t: số lượng bộ dữ liệu.
  • Mỗi bộ dữ liệu gồm một dòng chứa ba số nguyên n0,n1,n2.

Dữ liệu ra

In ra t dòng, mỗi dòng là một xâu nhị phân tương ứng với một bộ dữ liệu. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ràng buộc

  • 1t1000
  • 0n0,n1,n2100
  • n0+n1+n2>0
  • Dữ liệu đảm bảo luôn tồn tại đáp án.

Ví dụ

Input Output Giải thích
7
1 3 5
1 1 1
3 9 3
0 1 0
3 1 2
0 0 3
2 0 0
0011111101
0011
0000111101010101
01
0000111
1111
000
Mỗi dòng ra là một đáp án hợp lệ. Với "0011111101": cặp "00" cho n0=1, các cặp "01"/"10" cho n1=3, năm cặp "11" cho n2=5. Các đáp án khác cũng được chấp nhận nếu đếm ra đúng bộ số.
3
0 0 1
1 0 0
0 1 0
11
00
01
Khi chỉ có một cặp, xâu có độ dài 2: "11" cho n2=1, "00" cho n0=1, "01" cho n1=1.

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