CSES - One Bit Positions | Các vị trí bit 1

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2000 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Cho một xâu nhị phân có độ dài \(n\). Với mỗi \(k\) trong khoảng \(1 \ldots n - 1\) đếm số cách chọn \(i\)\(j\) sao cho \(i - j = k\) và cả hai vị trí đều chứa bit \(1\).

Input

  • Một dòng duy nhất chứa một xâu chỉ bao gồm kí tự 01
  • \(2 \leq n \leq 2\cdot 10^5\) với \(n\) là độ dài xâu

Output

  • Với mỗi \(k\) trong khoảng \(1 \ldots n - 1\), in ra số cách có thể chọn được hai vị trí như vậy.

Example

Test 1

Input
1001011010
Output
1 2 3 0 2 1 0 1 0

Bình luận (6)

Mới nhất
Tải bình luận...