算法竞赛入门经典 2.2 循环结构程序设计

原创 2012年03月25日 19:31:17
//例题2-2 3n+1问题
//猜想:对于任意大于1的自然数n,若n为奇数,则将n变成3n+1,否则变成一半
//经过若干次这样的变换,一定会使n变成1.例如3->10->5->16->8->4->2->1
//输入n,输出变换的次数。n≤10^9.
//样例输入:3
//样例输出:7


#include<iostream>
using namespace std;

int main()
{
	int n,count=0;		//初始count=0
	cin>>n;
	while(n>1)	
	{
		if(n%2==1) n=n*3+1;
		else n/=2;
		count++;	//计数器
		cout<<n<<endl;		//输出中间结果
	}
	cout<<count<<endl;
	return 0;
}

//例题2-3 阶乘之和
//输入n,计算S=1!+2!+3!+……+n!的末6位(不含前导0),n≤10^6
//程序2-5 阶乘之和
#include<iostream>
using namespace std;

int main()
{
	int i,j,n,S=0;
	cin>>n;
	for(i=1;i<=n;i++)
	{
		int factorial=1;
		for(j=1;j<=i;j++)
			factorial*=j;
		S+=factorial;
		//cout<<S<<endl;
	}
	cout<<S%1000000<<endl;
	return 0;
}

//程序2-6 阶乘之和(2)
#include<iostream>
#include<iomanip>
#include<ctime>
using namespace std;

int main()
{
	const int MOD=1000000;
	int i,j,n,S=0;
	cin>>n;
	for(i=1;i<=n;i++)
	{
		int factorial=1;
		for(j=1;j<=i;j++)
			factorial=(factorial*j % MOD);
		S=(S+factorial)%MOD;
	}
	cout<<S<<endl;
	cout<<"Time used="
		<<setiosflags(ios::fixed)<<setprecision(2)
		<<(double)clock()/CLOCKS_PER_SEC<<endl;
	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【算法竞赛入门经典学习日记】第二章 循环结构程序设计

例题 数据统计(重定向,无bug版)#include #include int main() { freopen("infile","r","stdin"); freopen("ou...

《算法竞赛入门经典》CH2 循环结构程序设计 习题

例题2-1  aabb 题目:输出所有形如aabb的四位完全平方数(即前两位数字相等,后两位数字相等) 要点:   函数名: floor   功 能: 返回小于或者等于指定表达式的最大整数 ...

算法竞赛入门经典 1.4 分支结构程序设计

//例题1-4 鸡兔同笼 //已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡的数目和兔的数目。 //如果无解,则输出“No answer” //样例输入:14 32 //样例输出:12 2...
  • wwj_748
  • wwj_748
  • 2012年03月24日 10:15
  • 986

《算法竞赛入门经典》CH1 程序设计入门 习题

习题1-1 平均数(average) 题目:输入3个整数,输出他们的平均值,保留3位小数。   #include int main() { int a,b,c; ...

挑战程序设计竞赛 算法和数据结构 第11章 动态规划法

挑战程序设计竞赛 算法和数据结构 第11章 动态规划法 11.2 菲波那切数列 ALDS1_10_A:Fibonacci Number 11.3 最长公共子序列 ALDS1_10_C:Longe...
  • mrcrack
  • mrcrack
  • 2017年11月03日 17:06
  • 99

经典重拾-第一部分 语言篇-第二章 -循环结构程序设计

有经验的程序猿总是尽量缩小变量定义范围。 for(int i=0; i

POJ 2376-Cleaning Shifts [贪心] [区间] 《挑战程序设计竞赛》2.2

题目链接: POJ 2376-Cleaning Shifts题目大意: 给定NN 个小区间 [xi,yi]...[xn,yn][x_i, y_i] ... [x_n, y_n] , 要求用最少的区...
  • yoer77
  • yoer77
  • 2017年04月04日 19:08
  • 72

POJ 3069-Saruman's Army [贪心] 《挑战程序设计竞赛》2.2

POJ 3069-Saruman's Army 贪心法
  • yoer77
  • yoer77
  • 2017年03月12日 11:26
  • 166

POJ 3617 Best Cow Line [贪心] 《挑战程序设计竞赛》2.2

POJ 3617 Best Cow line 贪心算法
  • yoer77
  • yoer77
  • 2017年03月11日 23:39
  • 152
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:算法竞赛入门经典 2.2 循环结构程序设计
举报原因:
原因补充:

(最多只允许输入30个字)