1110 -- 3n+1中文版(简化版)

本博客介绍了一个关于自然数变换的问题,通过输入任意大于1的自然数n,根据其奇偶性进行变换(奇数时变为3n+1,偶数时除以2),直到最终变为1。博客提供了求解变换次数的算法实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3n+1中文版(简化版)

Time Limit:1000MS  Memory Limit:65536K
Total Submit:416 Accepted:155

Description

猜想:对于任意大于1的自然数n,如果n为奇数,则n=3n+1,否则n=n/2,则经过若干步骤后n一定会变成1;
如:3->10->5->16->8->4->2->1
共7步,
输入n,
输出变换次数

Input

输入n,
n<=1000000000

Output

变换次数

Sample Input

3

Sample Output

7

Source

lrj程序入门

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace AK1110 {
        class Program {
            static long tt(long n) {
                long number = 0;
                while (n != 1) {
                    if (n % 2 == 0)
                        n /= 2;
                    else
                        n = 3 * n + 1;
                    number++;
                }
                return number;
            }
            static void Main(string[] args) {
                long n = long.Parse(Console.ReadLine());
                Console.WriteLine(tt(n));
            }
        }
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值