第六届蓝桥杯C/C++A组第三题解答
来源:互联网 发布:sm2246xt开卡软件 编辑:程序博客网 时间:2024/05/16 16:03
题目:
小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。 你能猜出这个数字是多少吗?
思路:
主要思想是暴力循环,就把这个数从-999到999试,如果没有,就扩大范围。
这到题的主要难度在于判断“它的平方和立方正好把0~9的10个数字每个用且只用了一次”这句话上,就这句话理解而言,我们要算出其平方和立方,并且要得到平方和立方每一位的数字,如果把每一位的数字存储到一个数组里并且将数组排序,然后再从数组第0位开始到第9位逐一检查是否满足条件,那么久可以实现目的。
<span style="font-size:18px;">#include<iostream>#include<algorithm>using namespace std;int main(){int i=0,square=0,cube=0,n=0,flag=0;for(i=0;i<=999;i++){int a[50]={0},m=0; //这里要注意重新初始化。square=i*i;cube=i*i*i;for(;square!=0;)//得到平方每一位的数字{a[m]=square%10;m++;square=square/10;}for(;cube!=0;)//得到立方每一位的数字{a[m]=cube%10;m++;cube=cube/10;}sort(a,a+m); //排序函数for(n=0;n<=9;n++)//逐一比较{if(a[n]==n){flag=1;//flag为此题的判断标志}else{flag=0;break;}}if(flag==1&&m==10)//如果flag为1,代表数组0~9位满足题目所讲{cout<<i<<endl;}}return 0;}</span>
注意:
见程序。
心路历程:
水题,但是很考验细节
0 0
- 第六届蓝桥杯C/C++A组第三题解答
- 第六届蓝桥杯C/C++A组第一题解答
- 第六届蓝桥杯C/C++A组第四题解答
- 第六届蓝桥杯C/C++A组第八题解答
- 第六届蓝桥杯C/C++A组第五题解答
- 2015第六届蓝桥杯 C/C++A组真题及题解
- 第六届蓝桥杯决赛 C语言A组 题解 第四题_穿越雷区
- 第六届蓝桥杯A组C/C++ 第三题 奇妙的数字
- 显示二叉树 第六届蓝桥杯大赛个人赛决赛(C语言A组)第三题
- 第六届蓝桥杯个人省赛C语言A组第三题
- 第六届蓝桥杯C/C++A组 第八题 饮料换购
- 第六届蓝桥杯C/C++A组 第九题 垒骰子
- 蓝桥杯 2016c/c++A组 题解
- 2015第六届蓝桥杯 C/C++B组真题及题解
- 第六届蓝桥杯A组C/C++ 第二题 星系炸弹
- 第六届蓝桥杯A组C/C++ 第七题 手链样式
- c语言程序设计第三章题解
- del_substr,C和指针,第六章第二题解答
- API接口整理
- 写给25岁,懈怠的自己
- visio画图常见问题解答
- BabyStepGiantStep学习笔记
- 正则表达式的使用
- 第六届蓝桥杯C/C++A组第三题解答
- hdu_1272 小希的迷宫
- 常用算法之动态规划算法
- 重载与命名空间
- MySQL 数据类型
- su oracle和su - oracle的区别
- Android 的系统架构
- Majority Element leetcode[169]
- Smart SVN破解版安装教程