题目链接:点击打开链接

题意:A代表一到多个1,B代表一到多个0,组成二进制不长于63位的数字。形式为ABAB...A或ABABAB...AB;

分析:一个令我印象深刻的位运算题目,同时巩固了对set使用的熟练程度,第一次使用unsigned long long着实不适应;

思路详见代码:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<set>
#define ull unsigned long longusing namespace std;
char str[100];
ull n,m;
set<ull> ss;void init()
{int index=0;for(int i=1;i<64;i++){for(int j=0;j<63;j++){if(i+j<=63)  //暴力所有长度小于63的情况一共2015种 {    int cnt=i;ull A=1ull;//初始化注意事项加ull for(int k=1;k<i;k++){A=A<<1;A++;}ss.insert(A);ull sta=A;while(cnt<=63)//位运算一定用位数来判停,最多循环32次,复杂度2015*32,1000ms足够,况且是打表{sta=sta<<j;cnt+=j;if(cnt>63) break;ss.insert(sta);sta=sta<<i;sta+=A;cnt+=i;if(cnt>63)  break;ss.insert(sta);}}}}
}void cal()
{int ans;set<ull>::iterator it;for(it = ss.begin() ; it != ss.end() ; ++it)  {  if(*it>=n && *it<=m)ans++;}    printf("%d\n",ans);
}int main()
{init();
//  printf("%d\n",ss.size()); 一共4809个符合情况的,直接遍历即可。 while(~scanf("%llu%llu",&n,&m)){cal();}return 0;
}

7279 - Sheldon Numbers相关推荐

  1. UVALive 7279 Sheldon Numbers (暴力打表)

    Sheldon Numbers 题目链接: http://acm.hust.edu.cn/vjudge/contest/127406#problem/H Description According t ...

  2. UVALive 7279 Sheldon Numbers

    题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...

  3. Gym - 101128H - Sheldon Numbers

    Gym - 101128H - Sheldon Numbers 原命题链接 写在前面 这是一道在学校比赛的时候遇到的题目,当时就觉得可以敲,一开始是纯暴力枚举判断,结果正确但是严重超时,后来改成了暴力 ...

  4. Sheldon Numbers 暴力枚举

    题意:求在区间内Sheldon数字的个数 题解: 枚举n  m,然后判断是否可以组成相应的位数 然后再判断是否这个数字是在这个区间内 #include<stdio.h> #include& ...

  5. Sheldon Numbers

    Sample Input 1 10 70 75 Sample Output 10 1 题意:一个数的二进制满足ABABA或者是ABAB的情况是完美的,要求A里面全是1,并且个数不为0,B里面全是0,个 ...

  6. Sheldon Numbers (暴力枚举)

    一开始想到是暴力构造 但是题没读懂.还好队友读懂了.今天自己写了个 发现还挺好写的.改了几个点过了. #include <bits/stdc++.h> using namespace st ...

  7. Gym - 101128H:Sheldon Numbers

    题意 给你两个整数X和Y 问你在区间[X,Y]中,有多少数字的二进制满足ABAB或者A这种形式.A是某个数量的1,B是某个数量的0. 分析 因为数据规模很大,直接枚举x和y之间的数字然后判断会超时.所 ...

  8. GYM 101128 H.Sheldon Numbers(枚举)

    Description 问区间[x,y]中有多少数的二进制表示是ABAB..AB型或者A型的,其中A是n个1,B是m个0,n,m>0 Input 两个整数x和y(0<=x,y < 2 ...

  9. GYM 101128H Sheldon Numbers

    原题如 Description  问区间[x,y]中有多少数的二进制表示是ABAB..AB型或者A型的,其中A是n个1,B是m个0,n, m > 0  Input  两个整数x和y(0<= ...

最新文章

  1. RH5.4下samba共享配置实例(3)
  2. HttpClient 如何设置请求接口等待时间
  3. jdbc封装mysql_实用JDBC数据库查询封装
  4. linux中断系统那些事之----中断处理过程【转】
  5. esxi时区设置 +8_Go语言MySQL时区问题
  6. 超级计算机预测南方下雪,南方九省即将大雪纷飞?超级计算机:可能性增加,但还没有确定...
  7. SQL:ISNULL
  8. 在.NET Core中使用Exceptionless分布式日志收集框架
  9. 阿里Java编程规约(集合)
  10. 深入理解static关键字
  11. EXCEL表格转换成json数据工具
  12. Dcmtk在PACS开发中的应用(基础篇) 第二章 打印影像(胶片) 作者 冷家锋
  13. 漫画:从打牌到 map-reduce 工作原理解析
  14. 博客生活的另一种境界![博友话题]
  15. 在Linux Redhat 9.0使用YUM
  16. Arcgis Android - HelloWorld
  17. html5怎么联网,HTML5--离线web应用
  18. 一起来全面解析5G网络领域最关键的十大技术
  19. Netron可视化网络结构
  20. java: 不兼容的类型: java.lang.Long无法转换为java.lang.Intege

热门文章

  1. 邻接表-建立无向图、无向网、有向图、有向网
  2. IO流 输入流、输出流、字节流、字符流、转换流、及Properties类
  3. 区块链游戏为何如此火?大概是因为投机者和“韭菜”太多
  4. 夜来风雨声,MapReduce知多少?
  5. 【老狼推荐】Instruments 用户指南
  6. TCP和UDP编程的区别,步骤
  7. windows 安装汽车之家falcon插件 采集数据
  8. 【每日早报】2019/07/01
  9. 树莓派siri homekit_米家设备也能喊 Siri 控制,手把手教你把米家设备接入 Homekit
  10. halcon中如何生成椭圆_《zw版·Halcon-delphi系列原创教程》 Halcon分类函数005·graphics-obj,基本绘图单元,包括线段、矩形、椭圆、圆形...