首先声明,我是一个菜鸟。一下文章中出现技术误导情况盖不负责
标题链接:http://ac.jobdu.com/problem.php?pid=1031
标题分析:
简单的递归算法,不解释了,直接看代码吧。
源代码:
#include <iostream> using namespace std; int n; //输入数字 int i = 0; //转化步数 void cut(int n) { if (n == 1) { cout<<i<<endl; i = 0; } else if (n % 2 == 0 && n != 0) //n是偶数 { n = n / 2; i++; cut(n); } else if (n % 2 == 1 && n != 1) //n是奇数 { n = 3 * n + 1; n = n / 2; i++; cut(n); } } int main() { i = 0; while (cin>>n) { if (n == 0 || n < 0 || n > 10000) { break; } cut(n); } return 0; }
文章结束给大家分享下程序员的一些笑话语录: 有一天,一个男人穿越森林的时候,听到一个细微的声音叫住他。他低头一看,是一只青蛙。
“如果你亲我一下,我会变成一个美丽的公主哦。”男人一言不发,把青蛙捡起来,放入口袋。
“如果你亲我一下,我会变成一个美丽的公主哦。而且,我会告诉我遇到的每一个人,你是多么聪明和勇敢,你是我的英雄。”男人把青蛙拿出来,对着它微微一笑,又把它放回口袋。
“如果你亲我一下,我会变成一个美丽的公主,然后我愿意成为你的爱人一星期。”男人又把青蛙拿出来,对着它微微一笑,把它放回口袋。
“如果你亲我一下,我会变成一个美丽的公主,然后我愿意成为你的爱人一年,而且你可以对我做任何事。”再一次,男人把青蛙拿出来,对着它微微一笑,又把它放回口袋。
最后,青蛙无力地问:“我开出了这么好的条件,为什么你还不肯吻我?”男人说:“我是一个程序员,我可没时间和什么公主鬼混。不过,拥有一个会说话的青蛙,倒是蛮酷的。”