回 帖 发 新 帖 刷新版面

主题:分法~~

有数A和B,A不可单独一个在地方,(前后必须再要有一个A)
输入2时:AA BB                          2种
输入3时:AAA BBB AAB BAA                4种

输入一个数n,输出方案数
如   输入3           输出4

回复列表 (共15个回复)

11 楼

CLS
INPUT N
DIM A(N+1)
FOR I=1 TO N
  A(I)=1
NEXT I
S=0
DO WHILE A(0)=0
  F=1
  FOR I=2 TO N
    IF A(I)=1 THEN 
      IF A(I-1)<>1 AND A(I+1)<>1 THEN F=0:EXIT FOR
    END IF
  NEXT I
  IF A(1)=1 THEN IF A(2)<>1 THEN F=0
  S=S+F
  K=N
  DO WHILE A(K)=2
    A(K)=1
    K=K-1
  LOOP
  A(K)=A(K)+1
LOOP
PRINT S
我用全排列做的

12 楼

还是有漏洞的,仔细看看吧

13 楼

你从15开始就已经速度很慢了~
在改进

14 楼

哈哈,当然慢我用的可是进制穷举!想要快的吗的用剪枝!

15 楼

找规律,用高精度,就OK了

我来回复

您尚未登录,请登录后再回复。点此登录或注册