首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【 BowWow and the Timetable CodeForces - 1204A 】【思维】

【 BowWow and the Timetable CodeForces - 1204A 】【思维】

作者头像
_DIY
发布2019-10-14 17:27:50
发布2019-10-14 17:27:50
4990
举报

题目链接 可以发现 十进制4 对应 二进制100 十进制16 对应 二进制10000 十进制64 对应 二进制1000000 可以发现每多两个零,4的次幂就增加1. 用string读入题目给定的二进制数字,求出其长len,当len为奇数时,第一位为1,后面的位数如果都为0,则输出len,如果有一个不为0,则输出len+1; 当len为偶数时,则输出len。(之所以这样输出是因为题目给定4的次幂是从0开始的)

代码语言:javascript
复制
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
string s;
int main()
{
    // freopen("input.txt", "r", stdin);
    // freopen("output.txt", "w", stdout);
    cin >> s;
    int len = s.length();
    if(len % 2 == 0)
        printf("%d\n", len / 2);
    else 
    {
        int flag = 0;
        for(int i = 1;i < len; i++)
        {
            if(s[i] == '1')
            {
                printf("%d\n", len / 2 + 1);
                flag = 1;
                break;
            }
        }
        if(!flag)
            printf("%d\n", len / 2);
    }
    
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-10-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档