社区讨论
大佬们帮帮!第三个测试点超时了。。。(C语音,用realloc动态分配内存)
P5727【深基5.例3】冰雹猜想参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @lo1u7265
- 此快照首次捕获于
- 2023/10/23 03:03 2 年前
- 此快照最后确认于
- 2023/11/03 03:35 2 年前
C
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,i=1,j;
int* a=NULL;
scanf("%d",&n);
j=n;
while (n!=1) {
a=(int* )realloc(a,(i+1)*sizeof(int));
a[0]=j;
if (n%2==0) {
a[i]=n/2;
} else {
a[i]=n*3+1;
}
n=a[i];
i++;
}
for (j=i-1;j>-1;j--) {
printf("%d ",a[j]);
}
free(a);
return 0;
}
动态分配内存真的不如直接开一个大数组嘛
回复
共 3 条回复,欢迎继续交流。
正在加载回复...