问题标题:
数学排列组合二进制串看看哪里错了数学排列组合看看我哪里错了,总是差1,求有多少个8位二进制串包含3个连续的0或者4个连续的1?答案是147,我老算得148!我的解:先看含有3个连续的0的,000*****
问题描述:
数学排列组合二进制串看看哪里错了
数学排列组合看看我哪里错了,总是差1,求有多少个8位二进制串包含3个连续的0或者4个连续的1?答案是147,我老算得148!
我的解:先看含有3个连续的0的,
000*****2∧5=32(含3个“4个连续1”)
1000****2∧4=16(含1个“4个连续1”)
*1000***2∧4=16
**1000**2∧4=16
***1000*(2∧3-1)2=14(含1个“4个连续1”)
****10002∧4-3=13(含2个“4个连续1”).
下面是4个连续1的:
1111****2∧4=16
01111***2∧3=8
*01111**2∧3=8
**01111*2∧3=8
***011112∧3=8
根据容斥原理107+48-7=148,怎么算都不是147
郭斯淦回答:
问题出在你最后的那个式子中,减7是错误的,因为同时包含000和1111的组合应该是8个.通过编程解决:>> s=arrayfun(@(i)dec2bin(i,8),0:255,'UniformOutput',false);>> sum(cellfun(@...
点击显示
数学推荐
热门数学推荐