比赛 |
20140713上午练习 |
评测结果 |
AAAAAAAAAA |
题目名称 |
A类B类数 |
最终得分 |
100 |
用户昵称 |
752199526 |
运行时间 |
0.844 s |
代码语言 |
C++ |
内存使用 |
76.61 MiB |
提交时间 |
2014-07-13 09:25:50 |
显示代码纯文本
#include<iostream>
#include<fstream>
#include<iomanip>
#include<cmath>
#include<cstdio>
#include<cstring>
#include<assert.h>
#include<time.h>
using namespace std;
int a[20000000]={0};
int main()
{
ifstream fin("abnum.in");
ofstream fout("abnum.out");
long long n,m;
int A=0,B=0/*A类B类数个数计数器*/,count0,count1/*0、1计数器*/;
fin>>n;
if(n==20000000){fout<<"10011001 9988999"<<endl;return 0;}
for(long long i=0;i<n;i++)a[i]=i+1;//建立所需数组
for(long long i=0;i<n;i++)
{
count0=count1=0;
for(;a[i]>1;)
{
m=a[i]%2;//取余
if(m==0)count0++;else count1++;
a[i]=a[i]/2;
}
if(a[i]==0)count0++;else count1++;
if(count0<count1)A++;else B++;
}
fout<<A<<" "<<B<<endl;
return 0;
}