SilyaSophie 2022-10-20 16:53 采纳率: 60%
浏览 64
已结题

输出100以内所有满足”角谷猜想”的正整数

问题遇到的现象和发生背景

码哥猜想

时间限制:1秒

占用内存: 128 M

小码哥第一次看到了” 角谷猜想”:

“对于任意一个正整数,如果是奇数,则乘3加1 ,如果是偶数,则除以2 ,得到的结果再按照上述规则重复处理,最终总能够得到1.”数学的简洁与优美让小码哥惊叹不已,小码哥大受启发,提出了”码哥猜想”:

“对于100以内(包括100)任意-个正整数 ,如果是奇数,则乘5减1 ,如果是偶数,则除以2 ,得到的结果再按照上述规则重复处理,最终总能够得到1.

很不幸,小码哥发现自己的猜想对于100以内的正整数并不是完全成立,于是小码哥想求出100以内满足自己猜想的正整数,来研究其性质。

格式

输入格式:无输入。

输出格式:输出一-行若干个用空格分隔的整数,表示100以内所有满足”码哥猜想”的正整数,从小到大输出。

用代码块功能插入代码,请勿粘贴截图

#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<100;i++)
{ j=i;
do
{
if(j%2==1)
j=j*3+1;
else if(j%2==0)
j=i/2;
}while(j!=1&&j<=10000000);
if(j==1)
{
printf("%d",i);
}
}
return 0;
}

运行结果及报错内容

超时( Time Limit Exceed )

运行时间: 1000ms

占用内存: 152KB

得分:0

Compile Successfully.

Test Point #0: Time Limit Exceed, Time = 1000 ms, Memory = 152 KB,Score = 0

Time Limit Exceed, Time = 1000 ms,Memory = 152 KB,Score = 0

我的解答思路和尝试过的方法

从1到99依次进行循环,内部是do-while循环,当j等于1或大于10^7时跳出循环,找出100以内符合角谷猜想的数。

我想要达到的结果

输入:无
输出:1 2 3 4 5 6 7 8 (后面均为满足条件的正整数)

  • 写回答

3条回答 默认 最新

  • SilyaSophie 2022-10-20 22:16
    关注

    修改了之后可以运行,但还是报错了,好像找出来的数字不对。
    这道题还有个备注:1-8都满足猜想。为了方便,若在过程中某一步数字大于10的七次方即视为不满足该猜想。

    img


    修改之后运行成功了。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 创建了问题 10月20日

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号