当前位置: 首页 > news >正文

XTU-OJ 1221-Binary

题目描述

给你一个非负整数n(0≤n≤232-1),求其二进制里面最长连续1数码的长度。
比如,7的二进制为111,所以最长连续1数码的长度为3;13的二进制为1101,所以最长连续1数码的长度为2.

输入

第一行是一个整数K(K≤20000),表示样例的个数; 以后每行一个整数n。

输出

每行输出一个样例的结果。

样例输入
2
7
13
样例输出
3
2

解题思路:题目很明显就是一个 二进制转换 + 求出现最多次数 的问题。 这些问题都碰见很多次了,相信大家都有了一定的解题方法。所以这些都不是大问题。

这里最需要注意的是,n的取值范围(这里也有考验你对 int 的取值范围的熟悉程度)要知道 int 是4字节字符,一字节有八比特,所以有 32个比特,一个比特就是一个 0/1, 所以 一个int 由 长为32的 0/1串 表示,但最前面一位是符号位。所以int的最大值是多少? 2^31-1 !,所以 这题但用 int 是表示不了 n 的,一定要用 __int64.

AC代码:

#include <stdio.h>int main()
{int K,t;__int64 n;int cnt,maxlen;scanf("%d",&K);while ( K --){cnt = maxlen = 0;scanf("%I64d",&n);while (n){t = n%2;if (t == 1)    cnt ++;else{if (cnt > maxlen)   maxlen = cnt;cnt = 0;}n /= 2;}if (cnt > maxlen)   maxlen = cnt;printf("%d\n",maxlen);}return 0;
}

http://www.lryc.cn/news/206307.html

相关文章:

  • Chromium源码由浅入深(三)
  • 如何集成验证码短信API到你的应用程序
  • Linux- 由映射文件I/O问题引出的SIGBUS 空洞文件(Sparse File)
  • 代码随想录图论 第二天 | 695. 岛屿的最大面积 1020. 飞地的数量
  • R语言代码示例
  • ESP32网络开发实例-将 ESP32 连接到 EMQX Cloud MQTT Broker
  • 基于Kubesphere容器云平台物联网云平台Devops实践
  • 淘宝商品详情页API接口|tb获取商品主图接口
  • JAVA面试笔记
  • 尚硅谷Flume(仅有基础)
  • JS中this的绑定规则
  • 酷开科技 | 酷开系统大屏电视,打造精彩家庭场景
  • GDPU 数据结构 天码行空6
  • 机器学习实验三:决策树-隐形眼镜分类(判断视力程度)
  • 广州华锐互动:VR技术应用到工程项目施工安全培训的好处
  • Hadoop3.0大数据处理学习1(Haddop介绍、部署、Hive部署)
  • C笔记:引用调用,通过指针传递
  • 【方法】如何给PDF文件添加“打开密码”?
  • 单源最短路径 -- Dijkstra
  • Java--多态及抽象类与接口
  • Python手搓C4.5决策树+Azure Adult数据集分析
  • 【tg】6: MediaManager的主要功能
  • NPM-安装报错connect ETIMEDOUT
  • 机器学习之查准率、查全率与F1
  • *Django中的Ajax 纯js的书写样式1
  • 谈谈node架构中的线程进程的应用场景、事件循环及任务队列
  • http代理IP它有哪些应用场景?如何提升访问速度?
  • Armv8/Armv9的VIPT的别名问题是如何解决的
  • java/javaswing/窗体程序,人脸识别系统,人脸追踪,计算机视觉
  • 设计模式(16)迭代器模式