3n+1

时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte
总提交:937            测试通过:386

描述

对于任意大于1的自然数n,若n为奇数,则将n将变为3n+1,否则变为n的一半。经过若干次这样的变换,一定会使n变为1。例如3→10 →5→16 →8 →4 →2 →1。现请你计算变换中这些数的平均值,例如上述变换中3、10、5、16、8、4、2和1的平均值为6.125。

输入

输入自然数n,n≤106

输出

输出从n变换为1过程中所有数的平均值,保留3位小数,格式见样例。

样例输入

3

样例输出

6.125

提示

题目来源

NUPT

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
int n;
cin>>n;
int count=;
double result=n;
while(n!=)
{
if(n%!=)
n=*n+;
else
n=0.5*n;
result+=n;
count++;
}
result=(result)/count;
printf("%.3f",result);
return ;
}

ACM——3n+1的更多相关文章

  1. 武汉科技大学ACM:1004: 零起点学算法36——3n+1问题

    Problem Description 任给一个正整数n,如果n为偶数,就将它变为n/2,如果为奇数,则将它乘3加1(即3n+1).不断重复这样的运算,经过有限步后,一定可以得到1 . Input 输 ...

  2. ACM训练计划建议(写给本校acmer,欢迎围观和指正)

    ACM训练计划建议 From:freecode#  Date:2015/5/20 前言: 老师要我们整理一份训练计划给下一届的学弟学妹们,整理出来了,费了不少笔墨,就也将它放到博客园上供大家参考. 菜 ...

  3. acm算法模板(1)

    1. 几何 4 1.1 注意 4 1.2 几何公式 4 1.3 多边形 6 1.4 多边形切割 9 1.5 浮点函数 10 1.6 面积 15 1.7 球面 16 1.8 三角形 17 1.9 三维几 ...

  4. HDU 5029 Relief grain(离线+线段树+启发式合并)(2014 ACM/ICPC Asia Regional Guangzhou Online)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5029 Problem Description The soil is cracking up beca ...

  5. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  6. 寒假的ACM训练(一)

    今天开始ACM训练,选择了刘汝佳的<挑战编程>,暂时算是开始了. 测评的网址: http://www.programming-challenges.com 第一个题目是水题啦.3n+1. ...

  7. 牛客网暑期ACM多校训练营(第七场)Bit Compression

    链接:https://www.nowcoder.com/acm/contest/145/C 来源:牛客网 题目描述 A binary string s of length N = 2n is give ...

  8. ACM训练计划建议(转)

    ACM训练计划建议 From:freecode#  Date:2015/5/20 前言: 老师要我们整理一份训练计划给下一届的学弟学妹们,整理出来了,费了不少笔墨,就也将它放到博客园上供大家参考. 菜 ...

  9. Acm hust 1.25

    闲着无聊做了点hust上 acm的训练题 A题 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=104738#problem/A 看了20分 ...

随机推荐

  1. 基于WebForm+EasyUI的业务管理系统形成之旅 -- 数据统计(Ⅳ)

    上篇<基于WebForm+EasyUI的业务管理系统形成之旅 -- 首页快捷方式>,主要介绍通过添加首页快捷方式,快速进入各个应用菜单功能. 将常用的菜单功能作为快捷方式,避免由于寻找诸多 ...

  2. GotFocus和PreviewLeftButtonDown事件

    当TextBox获得焦点后,其中的文字会被全选.通过GotFocus和PreviewLeftButtonDown事件,就可以模拟上述行为. 如果用户只是用键盘操作,GotFocus事件就足够了. 如果 ...

  3. 转载--C++ STL

    转自:http://wenku.baidu.com/view/15d18b4533687e21af45a9a4.html 1.C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vec ...

  4. Git分支管理的基本操作

    首先从远端版本库clone下来一个全新的库: git clone username@xxx:/xxx/xxx.git 此时clone下来的,只是master分支,没有其他分支. 查看分支: git b ...

  5. 最小生成树之kruskal方法实现 (java)

    今天是个阴天,下了点雨,work ......... 步骤:将所有边排序,然后不断从小到大加上边,这个过程最重要的是避免环的产生,此处用并查集.(nyoj 38) package 最小生成树; imp ...

  6. poj 2528 线段树 离散化的小技巧

    题意:在墙上贴海报,海报可以互相覆盖,问最后可以看见几张海报思路:直接搞超时+超内存,需要离散化.离散化简单的来说就是只取我们需要的值来 用,比如说区间[1000,2000],[1990,2012] ...

  7. VellCar(我的钢管车)

    我自己设计了一款钢管车,由于绘图水平有限,所以做的不是特别好看,但整个车架都是我自己设计的,个人觉得不错,尺寸也是按着实际尺寸做的,长2.5米宽为1米,后置发动机,后驱...贴图吧,更形象: 所有零部 ...

  8. java_list<String> string[]拼接json

    private String getJsonStr(List<String> jsonKeyList, String[] values){ String jsonStr = "{ ...

  9. Map集合中value()方法与keySet()、entrySet()区别

    http://blog.csdn.net/liu826710/article/details/9001254 在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, ...

  10. 数据库数据导入导出系列之五 C#实现动态生成Word(转)

    1. 一个控制台例子,实现动态生成Word. 首先,添加引用:COM->Microsoft Word 11.0 Object Library. 2. 介绍几篇牛人写的关于操作Word的文章 [分 ...