-
循环时间表(此过程仅适用于 n = 2 的 k 幂)包括
#include
#include
void table(double k, int **a) {int i, j, s, t, n = pow(2, k);
for (i = 1; i <= n; i++)a[1][i] = i;
int m = 1;
for (s = 1; s <= k; s++)n /= 2;
for (t = 1; t <= n; t++)for (i = m + 1; i <= 2 * m; i++)for (j = m + 1; j <= 2 * m; j++)a[i][j+(t-1)*m*2] = a[i-m][j+(t-1)*m*2-m];
a[i][j+(t-1)*m*2-m] = a[i-m][j+(t-1)*m*2];
m *= 2;
print(int **a, int n) {for(int i = 1; i <= n; i++)for (int j = 1; j <= n; j++)cout<>n;
int **a = new int*[n+1];
for (int i = 0; i <= n; i++)a[i] = new int[n+1];
int k = log10(n)/log10(2);
table(k, a);
cout<<"时间表如下:";
print(a, n);
cin>>n;
-
提示:根据分而治之的策略,我们可以将所有玩家分成两半,那么n个玩家的比赛日程可以由n个2玩家的比赛日程来决定。 递归地将玩家一分为二,直到只剩下两个玩家,时间表变得简单。
在这一点上,就让这两个玩家竞争吧。
根据提示,标题这样说是错误的,“2k”不是 2 的 k 次,而是 2 的 k 次方,注意......否则,如何正确编排程序。
-
这确实需要一些高级语言基础,所以建议你找个书店买一本书。
当任何一个女孩被追逐时,她的心理都是非常复杂的。 她也许很开心,但带着一点惶恐,她对这个闯入她平静生活的男孩有一种矛盾心理,她不是故意的。 不要以为她在考验你,她其实是在和自己作斗争,她害怕受伤。 >>>More