1. 程式人生 > >藍橋杯:基礎練習 01字串【JAVA演算法實現】

藍橋杯:基礎練習 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) {
//		Scanner cin = new Scanner(System.in);
		int n1=0,n2=0,n3=0,n4=0,n5=0;
		for(int i=0;i<32;i++){
			if (i%2==0)n1=0;
			else n1=1;
			if (i/2%2==0)n2=0;
			else n2=1;	
			if (i/4%2==0)n3=0;
			else n3=1;
			if (i/8%2==0)n4=0;
			else n4=1;
			if (i/16%2==0)n5=0;
			else n5=1;
			System.out.println(n5+""+n4+""+n3+""+n2+""+n1);
		}
	}
}
<pre name="code" class="java">public class Main {

	public static void main(String[] args) {
		// Scanner cin = new Scanner(System.in);
		String[] n = new String[5];
		for (int i = 0; i < 32; i++) {
			int ii = i;
			for (int j = 0; j < 5; j++) {
				n[j]=ii%2+"";
				ii = ii / 2;
			}
			System.out.println(n[4]+n[3]+n[2]+n[1]+n[0]);

		}

	}
}