由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 做个题吧。decoder.
相关主题
请教一道G家面试题Security 面試問題
问一道题这题咋做, 有点像Run Length encoding, 但又不全是?
FB 电面面经求airbnb电面面经
问一道Google的题问个google面试题
G家最新电面贴个电话面试经历,攒点人品
g电面请教HTTP怎么复习
decode ways follow up string 里面有* 怎么修改代码?G 家的一道题
脸书的高频题decode ways的follow up怎么解攒rp,分享一下个人总结的Yelp HR小问题
相关话题的讨论汇总
话题: string话题: because话题: know话题: original话题: digit
进入JobHunting版参与讨论
1 (共1页)
C*******n
发帖数: 193
1
Let's say you have a binary string such as the following:
011100011
One way to encrypt this string is to add to each digit the sum of its
adjacent digits. For example, the above string would become:
123210122
In particular, if P is the original string, and Q is the encrypted string,
then Q[i] = P[i-1] + P[i] + P[i+1] for all digit positions i. Characters off
the left and right edges of the string are treated as zeroes.
An encrypted string given to you in this format can be decoded as follows (
using 123210122 as an example):
Assume P[0] = 0.
Because Q[0] = P[0] + P[1] = 0 + P[1] = 1, we know that P[1] = 1.
Because Q[1] = P[0] + P[1] + P[2] = 0 + 1 + P[2] = 2, we know that P[2]
= 1.
Because Q[2] = P[1] + P[2] + P[3] = 1 + 1 + P[3] = 3, we know that P[3]
= 1.
Repeating these steps gives us P[4] = 0, P[5] = 0, P[6] = 0, P[7] = 1,
and P[8] = 1.
We check our work by noting that Q[8] = P[7] + P[8] = 1 + 1 = 2. Since
this equation works out, we are finished, and we have recovered one possible
original string.
Now we repeat the process, assuming the opposite about P[0]:
Assume P[0] = 1.
Because Q[0] = P[0] + P[1] = 1 + P[1] = 1, we know that P[1] = 0.
Because Q[1] = P[0] + P[1] + P[2] = 1 + 0 + P[2] = 2, we know that P[2]
= 1.
Now note that Q[2] = P[1] + P[2] + P[3] = 0 + 1 + P[3] = 3, which leads
us to the conclusion that P[3] = 2. However, this violates the fact that
each character in the original string must be '0' or '1'. Therefore, there
exists no such original string P where the first digit is '1'.
b******g
发帖数: 3616
2
这个题逻辑似乎还是挺简单的吧?
当知道Q序列以后,只要假设P[0]的值(0或1)以后,后面所有的P[i]都是根据Q而固定
了的,逐一推算,只要检查有没有违反二进制就可以了。
1 (共1页)
进入JobHunting版参与讨论
相关主题
攒rp,分享一下个人总结的Yelp HR小问题G家最新电面
烙印又鸡冻了:黑客事件续 (转载)g电面
FBI paid more than 1.3million to break into iPhone (转载)decode ways follow up string 里面有* 怎么修改代码?
湾区Startup招Part time Security Expert做安全顾问脸书的高频题decode ways的follow up怎么解
请教一道G家面试题Security 面試問題
问一道题这题咋做, 有点像Run Length encoding, 但又不全是?
FB 电面面经求airbnb电面面经
问一道Google的题问个google面试题
相关话题的讨论汇总
话题: string话题: because话题: know话题: original话题: digit