(c++)枚举--完美立方(仔细讲解)

本试验取材于郭炜老师的《程序设计与算法》。
上过课程的小伙伴都知道,课上老师当作例题讲的。老师讲的是一方面,自己听的有多少又是一方面。因此今天想再次分析这道题目的解题过程。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
题目老师讲解仔细,无非就是这几点。

  1. 这道题目使用枚举
  2. 枚举的好坏在于范围
  3. 利用题目已知条件

这道完美立方的题目运用枚举可以说是就跟韩信点兵、鸡兔同笼一样简单。然而目前要确定范围的话估计就要脑子转动一下。
在这里插入图片描述
恰如图片上面的部分,可能感觉这是问题的细致描述,殊不知这就是枚举范围的提示,因此
在这里插入图片描述
按照此法枚举,还能遵守代码格式要求,可谓是一箭双雕。也可能是这是对我们做题目的最大提示!

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int N;
	scanf("%d",&N);
	for(int a=2;a<=N;++a)
		for(int b=2;b<a;++b)
			for(int c=b;c<a;++c)
				for(int d=c;d<a;++d)
					if(a*a*a == b*b*b + c*c*c + d*d*d)
						printf("Cube = %d, Triple = (%d,%d,%d)\n",a,b,c,d);
	return 0;				
	
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值