Xâu nhị phân

Xem dưới dạng PDF

Gửi bài giải

Điểm: 10
Giới hạn thời gian: 0.2s
Giới hạn bộ nhớ: 256M

Tác giả:
Kiểu bài tập

Cho tập hợp tất cả các xâu nhị phân có độ dài \(N\) được sắp xếp theo thứ tự từ điển. Ví dụ N = \(3\) ta có tập hợp: \(000\), \(001\), \(010\), \(011\), \(100\), \(101\), \(110\), \(111\).

Trong tập hợp trên, ta có:

  • Xâu nhị phân \(100\): ở vị trí số \(5\).
  • Vị trí số \(7\) trong tập là xâu nhị phân: \(110\).

Yêu cầu

Với một số \(N\) \((N \le 63)\) cho trước, hãy cho biết:

  • Xâu nhị phân \(S\) (có độ dài \(N\)) nằm ở vị trí nào của tập.
  • Vị trí thứ K \((1 \le K \le 10^{18})\) là xâu nhị phân nào?

Dữ liệu vào

  • Dòng đầu chứa một số nguyên \(N\), là độ dài của các xâu nhị phân.
  • Dòng thứ hai chứa một xâu nhị phân \(S\) có độ dài bằng \(N\).
  • Dòng thứ ba chứa một số nguyên \(K\)

Dữ liệu ra

  • Dòng đầu tiên chứa một số nguyên là vị trí của \(S\) trong tập hợp.
  • Dòng thứ hai ghi xâu nhị phân có \(N\) phần tử nằm ở vị trí thứ \(K\).

Input 1

3
100
7

Output 1

5
110

Nhận xét

Không có ý kiến tại thời điểm này.