can 1 give me idea how solve following problem
input: - given string of binary numbers "1000101010101" - pattern "101" output: integer indicating possible no of non continuous patterns available
explanation:
input: "10101" output: 4
10101 10101 10101 10101
let s(0), s(1), ... given sequence of binary numbers.
let a(n), b(n), c(n) number of appearance of 1, 10, 101 in first n terms of s, respectively.
then have recurrence relation:
if
s(n) = 1, then:a(n) = a(n - 1) + 1,b(n) = b(n - 1),c(n) = c(n - 1) + b(n - 1).if
s(n) = 0, then:a(n) = a(n- 1),b(n) = b(n - 1) + a(n - 1),c(n) = c(n - 1).
this gives o(n) algorithm, optimal, since input o(n).
Comments
Post a Comment