Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5278
  • 博文数量: 6
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 67
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-14 19:47
文章分类

全部博文(6)

文章存档

2014年(6)

我的朋友

分类: C/C++

2014-04-14 21:30:59

样例输入:

4   2

3   4

10   1

2   2

8   128

16   12345

样例输出:

12

7

512

3

255

36358

 

 

 

#include
#include
#include
#include
#include
using namespace std;
const int MAXD = 20;
int s[1< int main()
{
    int D,I;
    while( scanf( "%d%d" , &D , &I ) ==2 )
    {
       memset( s,0,sizeof(s) );
       int k , n = ( 1<        for( int i=0; i        {
          k = 1;
          for( ; ; )
          {
             s[k] = !s[k];
             k = s[k] ? k*2 : k*2+1;
             if( k>n ) break;       
          }     
       }       
       printf( "%d\n" , k/2 );
    }
    system("pause");
 return 0;
}

阅读(45) | 评论(0) | 转发(0) |
0

上一篇:经典函数看待问题

下一篇:A等于B?

给主人留下些什么吧!~~