require 'digest' # s: String, bit: nummer def flipBit(s, bit) # Kopie von s s = String.new(s) byte = bit/8; bit = bit%8; s.setbyte(byte, s.getbyte(byte)^(1 << bit)) return s end # s1,s2: Zwei gleich lange Strings def count_bit_diff(s1,s2) diff = 0 s1.size.times{|i| xor = s1.getbyte(i)^s2.getbyte(i) # Ganzzahl: 1 Byte 8.times{|bit| diff+=1 if (xor & (1<