C1149 - 二进制分类
题目描述
若将一个正整数化为二进制数,在此二进制数中,我们将数字 $1$ 的个数多于数字 $0$ 的个数的这类二进制数称为 $A$ 类数,否则就称其为 $B$ 类数。
例如:
$(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 \le n \le 1000$),全部 $A,B$ 两类数的个数。
输入格式
输入 $n$。
输出格式
一行,包含两个整数,分别是 $A$ 类数和 $B$ 类数的个数,中间用单个空格隔开。
样例 #1
样例输入 #1
7
样例输出 #1
5 2
测试点数目
共10个测试点,每个测试点10分
时间与内存限制
每个测试点时间:1000ms(1.0s),内存:256MiB
输入输出模式
本OJ支持两种输入输出模式
1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:C1149.in,输出文件名为:C1149.out