二进制分类(信息学奥赛一本通-T1412)
生活随笔
收集整理的這篇文章主要介紹了
二进制分类(信息学奥赛一本通-T1412)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
【題目描述】
若將一個正整數(shù)化為二進制數(shù),在此二進制數(shù)中,我們將數(shù)字1的個數(shù)多于數(shù)字0的個數(shù)的這類二進制數(shù)稱為A類數(shù),否則就稱其為B類數(shù)。
例如:
程序要求:求出1~1000之中(包括1與1000),全部A、B兩類數(shù)的個數(shù)。
【輸入】
(無)
【輸出】
一行,包含兩個整數(shù),分別是A類數(shù)和B類數(shù)的個數(shù),中間用單個空格隔開。
【輸入樣例】
(無)
【輸出樣例】
(無)
【源程序】
#include<iostream> using namespace std; bool judge(int x);int main() {int a=0,b=0;int i;for(i=1; i<=1000; i++) //枚舉1-1000的數(shù)if(judge(i))//若i是A類數(shù)a++;else//若i是B類數(shù)b++;cout<<a<<" "<<b<<endl;return 0; }bool judge(int x) {int a=0,b=0;while(x>0)//將一個數(shù)化為二進制數(shù),并判斷是A類數(shù)還是B類數(shù){if(x%2)a++;//a統(tǒng)計1的個數(shù)elseb++;//b統(tǒng)計0的個數(shù)x/=2;}return a>b;// }?
總結(jié)
以上是生活随笔為你收集整理的二进制分类(信息学奥赛一本通-T1412)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 打印字符(信息学奥赛一本通-T1021)
- 下一篇: 计算并联电阻的阻值(信息学奥赛一本通-T