我正在研究班级中的八个皇后/国际象棋棋盘问题。对于我的代码,我使用一维数组,即q [c](c是列)来存储由女王组成的行的值。例如,q [1] = 3意味着在第2列(基于0的阵列)中,在第4行中存在皇后。使用1d阵列打印2d阵列
原始问题使用2d数组,因此b [r] [c] = 0,或1,1是女王,其余为0。该程序使用ok函数来测试它对所有先前放置的皇后所放置的每个皇后,并在最后打印结果。
The print function was
for(int j=0; j<c;j++)
cout<<endl;
for(int i=0; i<c;i++)
cout<< b[i][j];
打印了92个解板,看上去像这样
10000000
00001000
01000000
00010000
00000010
00100000
00000100
00000001
现在对于我的问题:我不能为我的生活弄清楚如何获得上述一维数组b [C ]打印看起来与此相同的电路板。我是一名初学者科比学生,但我仍然认为这将更加微不足道。
我不是在寻找答案,更多的是提示我在正确的方向,或者第一行代码。帮助非常感谢。感谢
提示:天真的方式只是:从您的一维数组中生成二维数组,然后以相同的方式打印它。如果你经历这个练习,你可能会碰到一些更好的想法。 – 2014-09-18 17:22:02
在你上一次为你可以检查我是否等于b [j]并打印0或1 – 2014-09-18 17:27:29