比赛场次 584
比赛名称 2020级再出发之位运算
比赛状态 已结束比赛成绩
开始时间 2023-07-25 08:00:00
结束时间 2023-07-25 11:00:00
开放分组 全部用户
注释介绍
题目名称 A类B类数
输入输出 abnum.in/out
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatar┭┮﹏┭┮ AAAAAAAAAA 1.838 s 49.22 MiB 100
Gravatar宇战 AAAAAAAAAT 2.536 s 3.44 MiB 90
Gravatar小金 AAAAAAAAAT 2.652 s 3.44 MiB 90
Gravatar超人 AAAAAAAAAT 2.666 s 3.44 MiB 90

A类B类数

★   输入文件:abnum.in   输出文件:abnum.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

若将一个正整数转换为二进制数,在此二进制数中,我们将数字$1$的个数多于数字$0$的个数的这类二进制数称为$A$类数,否则就称其为$B$类数。

  例如:

       $(1)_{10}=(1)_2$

      其中$1$的个数为$1$,$0$的个数为$0$,则称此数为$A$类数;

       $(13)_{10}=(1101)_2$

      其中$1$的个数为$3$,$0$的个数为$1$,则称此数为$A$类数;

       $(10)_{10}=(1010)_2$

      其中$1$的个数为$2$,$0$的个数也为$2$,称此数为$B$类数;

       $(24)_{10}=(11000)_2$

      其中$1$的个数为$2$,$0$的个数为$3$,则称此数为$B$类数;


 编程输出$1$~$n$之中(包括$1$和$n$),全部$A$、$B$两类数的个数。

【输入格式】

输入文件一行,为一个正整数$n$($1≤n≤2000,0000$);

【输出格式】

输出文件一行,为空格隔开的两个整数$a$和$b$,其中$a$表示$A$类数的个数,$b$表示$B$类数的个数;

【样例输入】

3

【样例输出】

2 1

【输入输出样例说明】

$1,2,3$对应的二进制数分别为$1,10,11$,故$A$类数有$2$个($1$和$3$),$B$类数有一个($2$);

【来源】

$NOIP1995$普及组