2013校园招聘---暴风影音---笔试题--输入n,输出对应的所有长度为n的二进制串
输入1
输出:
0
1
输入3:
输出:
000
001
010
011
100
101
110
111
//暴风影音 2013 校园招聘 笔试题#include <iostream>#include <math.h>#include <stack>using namespace std;void print(unsigned int n){int max = pow((double)2,(int)n);unsigned int MASK = 0x00000001;stack<int> s;for(unsigned int i=0; i<max; i++){for(int j=0; j<n; j++){s.push(((i & MASK)==MASK) ? 1:0);MASK=MASK<<1;}while(s.size()){cout << s.top();s.pop();}MASK=MASK>>n;cout << endl;}}void main(){print(3);}
- 2楼keynumber1小时前
- 我也写了一个。
- 1楼keynumber昨天 18:13
- [code=cpp]n#include <iostream>nusing namespace std;nint main()n{ntchar a[100];ntint pa=0;ntint n;ntcin>>n;ntfor (int i=0;i<n;i++)ntta[i]=47;ntwhile (pa>=0)nt{nttif(pa>=n)ntt{nttta[pa]=0;ntttcout<<a<<endl;tntttpa--;ntttcontinue;ntt}nttif(a[pa]>='1')ntt{nttta[pa--]=47;ntttcontinue;ntt}ntta[pa]++;nttpa++;nt}n}n[/code]
- Re: bxyill昨天 18:14
- 回复keynumbern嗯,好方法!学习了。我的太暴力了。纯属暴力输出。嘿嘿