蓝桥-01字串的四组解法

Description

对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

00000

00001

00010

00011

00100

请按从小到大的顺序输出这32种01串。

 

Input

本试题没有输入。

Output

输出32行,按从小到大的顺序每行一个长度为5的01串。

Sample Output

00000
00001
00010
00011

 

①、暴力

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
typedef long long LL;
using namespace std;
#define memset(a,n) memset(a,n,sizeof(a))
#define INF 0x3f3f3f3f
#define mod 10007
#define PI acos(-1)

int main()
{
    cout<<"00000"<

 

②、十进制转化成二进制

 

#include 
#include 
#include 
#include 
#include 
#include 
#include 
typedef long long LL;
using namespace std;
#define memset(a,n) memset(a,n,sizeof(a))
#define INF 0x3f3f3f3f
#define mod 10007


void Judge(int x)
{
    int a[10];
    int cnt=0;
    while(x)
    {
        a[cnt++]=x%2;
        x/=2;
    }

    for(int i=cnt;i<5;i++)
        a[i]=0;
    for(int i=4;i>=0;i--)
        cout<

 

  十进制转化成二进制

#include 
#include 
#include 
#include 
#include 
#include 
#include 
typedef long long LL;
using namespace std;
#define memset(a,n) memset(a,n,sizeof(a))
#define INF 0x3f3f3f3f
#define mod 10007

int main()
{
    for(int i=0;i<32;i++){
        cout<

 

 

③、五层循环输出

#include 
#include 
#include 
#include 
#include 
#include 
#include 
typedef long long LL;
using namespace std;
#define memset(a,n) memset(a,n,sizeof(a))
#define INF 0x3f3f3f3f
#define mod 10007

int main()
{
    int a,b,c,d,e;
    for(a=0; a<2; ++a)
        for(b=0; b<2; ++b)
            for(c=0; c<2; ++c)
                for(d=0; d<2; ++d)
                    for(e=0; e<2; ++e)
                        cout<

 

④、C++库中的 bitset 类型

传送门

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
typedef long long LL;
using namespace std;
#define memset(a,n) memset(a,n,sizeof(a))
#define INF 0x3f3f3f3f
#define mod 10007

int main()
{
    for(int i=0;i<32;i++)
        cout<(i)<(a)  : 输出a的n位二进制数

 

另外补充:

    int n=100;
    cout<(n)<

 

你可能感兴趣的:(ACM,----,知识点)