著名的3n+1问题,不能再简单。
/*
* hdu-1279
* mike-w
* 2012-4-14
*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
int N,first,ncase;
scanf("%d",&ncase);
while(ncase-->0)
{
scanf("%d",&N);
first=1;
while(N!=1)
{
if(N&0x1)
{
if(!first)
putchar(' ');
printf("%d",N),N=3*N+1,first=0;
}
else
N/=2;
}
if(first)
puts("No number can be output !");
else
putchar('\n');
}
return 0;
}
本文介绍了一个经典的数学问题——3n+1问题,并提供了一个C语言的解决方案。通过循环迭代,程序能够找到从任意正整数到1的路径。
256

被折叠的 条评论
为什么被折叠?



