基础练习 01字串

时间限制:1.0s   内存限制:256.0MB

问题描述

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

00000

00001

00010

00011

00100

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

输入格式

本试题没有输入。

输出格式

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

样例输出

00000

00001

00010

00011

#include<cstdio>
#include<cstdlib>
#include<cstring>
using namespace std;
int main()
{
	int a[6],e;
	memset(a,0,sizeof(a));
	for(int i=0;i<32;++i){
		int n=i;e=0;
		while(n){
			a[e++]=n%2;
			n=n/2;
		}
		for(int j=4;j>=0;--j)
		printf("%d",a[j]);
		printf("\n");
	}
	return 0;
}
时间: 2024-11-14 13:03:40

基础练习 01字串的相关文章

蓝桥杯 基础练习 01字串 【暴力解决】

基础练习 01字串 时间限制:1.0s   内存限制:256.0MB 问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000 00001 00010 00011 <以下部分省略> #include<stdio.h> int mai

lqb 基础练习 01字串 (itoa)

基础练习 01字串 时间限制:1.0s   内存限制:256.0MB 问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000 00001 00010 00011 <以下部分省略> 分析: 可以通过itoa(int n, char *, int

蓝桥杯:基础练习 01字串【JAVA算法实现】

题目描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000 00001 00010 00011 00100 <以下部分省略> public class Main { public static void main(String[] args) {

蓝桥杯 基础练习 01字串

分析: 很简单,就是输出0~32 的二进制形式 32中可能 就是最多5位数 00000 00001 00010........ 输出即可 #include <iostream> #include "stdio.h" #include "stdlib.h" using namespace std; int main(int argc, char *argv[]) { int a[5]; int num = 0; for (int i = 0; i <

【经典算法】寻找最长01字串(转自待字闺中)

这两天在微信公众号“待字闺中”中看到一个经典的面试算法,寻找最长01字串,原题目是这么说的: 给定一个数组,数组中只包含0和1.请找到一个最长的子序列,其中0和1的数量是相同的. 例1:10101010 结果就是其本身.例2:1101000 结果是110100 这个题目,看起来比较简单,一些同学可能认为题目的描述符合动态规划的特征,然后就开始用动态规划解,努力找状态转移方程.这些同学的感觉,是很正确的.但,找状态转移方程,我们要对原来的数组进行变换一下. 原来是0和1的串,我们将0都换为-1.这

“蓝桥杯”基础练习:01字串

问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000000010001000011<以下部分省略> 心得: 这个题目让我想起了今天刚有的用整型数组存放大数的想法 先是每次从第一个元素开始算数处理,然后调整. 对于数组中每个元素的不溢出,用w

蓝桥杯基础练习 java 01字串 进制转换

问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000000010001000011<以下部分省略> 我的思路:定义字符串数组从0到31,for循环int值从0到31,将int型转化为2进制,得到字符串,再判断字符串的长度,不够5位前面补0,

【算法】—妙:01字串

问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000000010001000011<以下部分省略> 该题是蓝桥杯<基础联系中得一道题>,最开始还在想要如何如何设置数组进行保存,但是经过片刻思考: 该题要求从低到高输出5位数得01

BASIC-2 01字串

问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是:0000000001000100001100100 请按从小到大的顺序输出这32种01串. 输入格式 本试题没有输入. 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串. 样例输出 00000000010001000011<以下部分省略> 代码 #include <stdio.h> int main () { for (int i=0;i<32;i++) printf