acm水题3个:1.求最大公约数;2.水仙花数;3.判断完数
//7.求两个整数的最大公约数
#include<stdio.h>
//用穷举法求出最大公约数
int gcd1(int m,int n)
{
int min = m > n ? n : m;
while (min)
{
if (m%min == 0 && n%min == 0)
{
break;
}
else
{
min--;
}
}
return min;
}
//快速求最大公约数的算法,称为辗转相除法,以下用递归实现
int gcd2(int m,int n)
{
if (n==0)
{
return m;
}
return gcd2(n, m%n);
}
int main()
{
int n, m;
while (~scanf("%d%d",&m,&n))
{
//printf("最大公约数为:%d\n", gcd1(m, n));
printf("最大公约数为:%d\n", gcd2(m, n));
}
return 0;
}
//8、“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,/
//比如:153=1^3+5^3+3^3,输入一个整数,判断它是否是水仙花数。
#include<stdio.h>
int cube(int a)
{
return a*a*a;
}
int main()
{
int n;
int temp;
int g;//个位
int s;//十位
int b;//百位
int num[4];
int sum;
while (~scanf("%d",&n))
{
//temp用来记录原来的n,因为后面n会被改掉
temp = n;
sum = 0;//sum用来记录各数的立方和
for (int i = 0; i < 3; i++)
{
num[i] = n % 10;
sum += cube(num[i]);
n /= 10;
}
if (sum==temp)
{
printf("此三位数是水仙花数\n");
}
else
{
printf("此三位数不是水仙花数\n");
}
/*g = n % 10;
n /= 10;
s = n % 10;
n /= 10;
b = n % 10;
if (temp == (cube(g) + cube(s) + cube(b)))
{
printf("此三位数是水仙花数\n");
}
else
{
printf("此三位数不是水仙花数\n");
}*/
}
return 0;
}
//9、完数的定义:如果一个大于1的正整数的所有因子之和等于它的本身,
//则称这个数是完数,比如6,28都是完数:6=1+2+3;28=1+2+4+7+14。输入一个整数,判断它是否是完数。
#include<stdio.h>
int main()
{
int n;
int temp;//用来记录所有因子之和
while (~scanf("%d",&n))
{
temp = 0;//每次一次都要初始化一次
for (int i = 1; i <= n / 2; i++)
{
if (n%i==0)
{
temp += i;
}
}
if (temp==n)
{
printf("此数是完数\n");
}
else
{
printf("此数不是完数\n");
}
}
return 0;
}
参考博客:http://blog.csdn.net/hackbuteer1/article/details/6667026
acm水题3个:1.求最大公约数;2.水仙花数;3.判断完数的更多相关文章
- ACM水题
ACM小白...非常费劲儿的学习中,我觉得目前我能做出来的都可以划分在水题的范围中...不断做,不断总结,随时更新 POJ: 1004 Financial Management 求平均值 杭电OJ: ...
- java求1000以内的水仙花数
水仙花数是指一个 n 位数 ( n>=3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153) 三位的水仙花数共有4个,分别为:153.370. ...
- HD ACM 水题顺序
原文传送门:http://acm.hdu.edu.cn/ 第一阶段:开始入门吧!(15天,53题) 一.输入输出练习(2天,10题) 1000.1089-1096.1001 二.简单操作:(2-4天, ...
- 2009 ACM 水题
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2009 思路:寻找平方根的函数,c++里面有sqrt,一定要注意 1 添加头文件#include <i ...
- 2186 ACM 水题 int 向下取整
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2186 扩展: #include <cstdio> 使用floor函数.floor(x)返回的是 ...
- 2107 ACM 水题
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2107 题意:比较大小,即使简单还是没有一次过,粗心的我,终于放假了,虽然我平时课还是有点多,但是希望自己能 ...
- python练习笔记——求三位的水仙花数
百位数的立方 + 十位数的立方 +个位数的立方 = 原数 for m in range(1,10): for n in range(0,10): for i in range(0,10): a = m ...
- hdu 1201:18岁生日(水题,闰年)
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- 用js 的for循环打印三角形,提取水仙花数,求本月多少天
第一题:用for循环打印三角形 //第一个 for(var x = 1;x <= 4;x++){ //控制行数 :由 1 到 4 for(var y = 1;y <= x;y++){ // ...
随机推荐
- linkin大话设计模式--单例模式
linkin大话设计模式 开文前先弱弱的问一句:什么是设计模式?我在研究java2ee的时候有研究过,在学js的时候也有看到.设计模式的概念最早源于建筑设计大师<建筑的永恒算法>一书,它表 ...
- wget实例
问题:下载http://web.utah.edu/thorne/computing/网页中所有的文件 命令:wget -c -r -np -k -L -p http://web.utah.edu/th ...
- TP5 常用-方法技巧
1.插入数据成功返回该数据的ID $add=db('user')->insertGetId($data); //insert($data) 方法获得是插入数据返回的影响条数 2.使用重定 ...
- 怎么使用IDEA
war 和 war exploded war部署首先通过IDEA生成.war工程文件,然后将WEB工程以包的形式上传到服务器,因此会替代服务器本来同名的web app项目. war exploded模 ...
- debug时ClassNotFound可能出现的原因
自我总结,欢迎拍砖! 目的:总结ClassNotFound可能出现的原因,方便以后定位该类问题. 原因:当项目中加了新类,debug或run时,报classnotfound,说明没有找到该类的clas ...
- VUE-脚手架搭建
1.什么vue-cli vue-cli是vue.js的脚手架,用于自动生成vue.js工程模板的. 步骤: 2.安装 ->全局安装 npm install vue-cli -g 或 ...
- C# Ioc ASP.NET MVC Dependency Injection
ASP.NET MVC Dependency Injection 同志们,非常快速的Ioc注册接口和注入Mvc Controller,步骤如下: 安装Unity.Mvc NuGet Package 在 ...
- 从返回的HTTP Header信息中隐藏Apache的版本号及PHP的X-Powered-By信息
默认情况下,很多apache安装时会显示版本号及操作系统版本,甚至会显示服务器上安装的是什么样的apache模块.这些信息可以为黑客所用,并且黑客还可以从中得知你所配置的服务器上的很多设置都是默认状态 ...
- ansible playbook实践(四)-如何调试写好的playbook文件
有时,我们写了一个长长,功能很强悍的yaml文件,但是,我们有可能会担心,写的yaml文件是否正确,是否有漏洞危机,毕竟是要修改线上的机器,那么,有可能我们可以从以下几个检查维度来进行,确保在大规模应 ...
- 洛谷 [P1387] 最大正方形
本题非常有趣. (n^6) 枚举四个端点,每次遍历矩阵求解. (n^4) 先处理前缀和,枚举四个端点,每次比较前缀和和正方形面积. (n^3) 枚举左上方端点,在枚举边长,前缀和优化 (n^2logn ...