汉诺塔ix C语言

来源:互联网 发布:java开发bi方向 编辑:程序博客网 时间:2024/05/16 09:51

看了许多思路,突然想到一种方法

1是1 3 5 7 9

2是2 6 10 

3是4 12 20

n就是 2^n-1   2^n-1+2^n  2^n-1+2^n+2^n

代码贴在下面

#include<stdio.h>#include<math.h>int main(void){int n,m,i;while(scanf("%d%d",&n,&m),n+m){if(m%2==1) printf("%d\n",1);else for(i=2;i<=n;i++){if((m+(int)pow(2,i-1))%(int)pow(2,i)==0){printf("%d\n",i);break;}}}return 0;}

0 0
原创粉丝点击