-
对以下程序,正确的输出结果是()
#include <stdio.h>
#define SUB(x,y) x-y
#define ACCESS_BEFORE(element,offset,value) *SUB(&element, offset) = value
int main() {
int array[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int i;
ACCESS_BEFORE(array[5], 4, 6);
printf("array: ");
for (i = 0; i < 10; ++i) {
printf("%d", array[i]);
}
printf("\n");
return (0);
}
array: 1 6 3 4 5 6 7 8 9 10
array: 6 2 3 4 5 6 7 8 9 10
程序可以正确编译连接,但是运行时会崩溃
程序语法错误,编译不成功 ...
阅读题目
单选题
经典指数
-
输入a1,a2,...,an,b1,b2,...,bn,
在O(n)的时间,O(1)的空间将这个序列顺序改为a1,b1,a2,b2,a3,b3,...,an,bn,
且不需要移动,通过交换完成,只需一个交换空间。 ...
阅读题目
问答题
经典指数
-
-
现在有 n=2^k(k为正整数)支足球队,编号为0,1,...,n-1,给出二维数组winner[][],winner[i][j]表示当编号为i的队和编号为j的队比赛时,会胜出的队伍的编号,winner[i][j]一定是i,j之中的一个(不存在平局),输入保证winner[i][j]=winner[j][i],现在给出一个单败淘汰赛的签位一位数组order[],order[i]表示第i个签位上的队伍的编号,order保证是0到n-1的一个排列。返回比赛最后的排名顺序,同一轮被淘汰的队伍名次并列,并列的队伍之间的排名顺序任意。要求时间和空间复杂度尽量低。
将结果写到一维数组result[]里面即可。
接口定义:
c:
void calculate_result(int n, int **winner, int *order, int *result);
c++:
void calculate_result(int n, vectorwinner, vectororder, vectorresult);
Java:
void calculate_result(int n, int ...
阅读题目
问答题
经典指数
-
-
-
-
-
-
扫描后移动端查看
相关标签
同类标签
|
微信公众号
|
|
欢迎加入,一起群聊
|