poj1543---完美立方(枚举)
#include <stdio.h>
#include <stdlib.h> int main()
{
int cube[101],n,i,a,b,c,d;
for(i=1;i<=100;i++)
{
cube[i]=i*i*i;
}
scanf("%d",&n);
for(a=6;a<=n;a++)
{
for(b=2;b<a;b++)
{
for(c=b+1;c<a;c++)
{
for(d=c+1;d<a;d++)
{
if(cube[a]==cube[b]+cube[c]+cube[d])
printf("Cube = %d, Triple = (%d,%d,%d)\n",a,b,c,d);
}
}
}
}
return 0;
}
题意:用户输入N,a<=N,使得cube[a]=cube[b]+cube[c]+cube[d],The values of b, c, and d should also be listed in non-decreasing order on the
line itself,同一行的b,c,d,也应该从左至右按照递增的顺序,, one perfect cube per line, in non-decreasing order of a,每一行的a按照递增顺序
输出格式:Cube = 6, Triple = (3,4,5) 分别代表a,b,c,d
思路:从题目case中看出最小a为6,题目, to find integers greater than 1 that satisfy the "perfect cube",所以从b,c,d从取2,3,4开始,个人觉得当a取大值,b,c,d还是从最开始的2,3,4取值,算法效率低,不过这就是枚举
6 2 3 4
6 2 3 5
6 2 4 5
6 3 4 5
7 2 3 4
7 2 3 5
7 2 3 6
7 2 4 5
7 2 4 6
7 2 5 6
7 3 4 5
7 3 4 6
7 3 5 6
7 4 5 6
8 2 3 4
以上为有效进入到if()判断的,没事多写几遍
第一次进入for循环的i的值需要和循环条件比
技巧:cube[20]就表示20的立方,cube[100],需要将数组开成101
poj1543---完美立方(枚举)的更多相关文章
- OpenJudge计算概论-完美立方【暂时就想到了枚举法了】
/*===================================== 完美立方 总时间限制: 1000ms 内存限制: 65536kB 描述 a的立方 = b的立方 + c的立方 + d的立 ...
- OpenJ_Bailian 2810 完美立方
题目地址: https://vjudge.net/problem/OpenJ_Bailian-2810 形如a3= b3 + c3 + d3的等式被称为完美立方等式.例如123= 63 + 83 + ...
- POJ 2810:完美立方
原题链接 总时间限制: 1000ms 内存限制: 65536kB 描述 形如\(a^{2}\)= \(b^{2}\) + \(c^{2}\) + \(d^{2}\)的等式被称为完美立方等式.例如123 ...
- ACM第三题 完美立方
形如a3= b3 + c3 + d3的等式被称为完美立方等式.例如123= 63 + 83 + 103 .编写一个程序,对任给的正整数N (N≤100),寻找所有的四元组(a, b, c, d),使得 ...
- Openjudge-计算概论(A)-完美立方
描述: a的立方 = b的立方 + c的立方 + d的立方为完美立方等式.例如12的立方 = 6的立方 + 8的立方 + 10的立方 .编写一个程序,对任给的正整数N (N≤100),寻找所有的四元组 ...
- 2810:完美立方-poj
2810:完美立方 总时间限制: 1000ms 内存限制: 65536kB 描述 形如a3= b3 + c3 + d3的等式被称为完美立方等式.例如123= 63 + 83 + 103 .编写一个 ...
- C++基础算法学习——完美立方
形如a 3 = b 3 + c 3 + d 3 的等式被称为完美立方等式.例如12 3 = 6 3 + 8 3 + 10 3 .编写一个程序,对任给的正整数N(N≤100),寻找所有的四元组(a, b ...
- OpenJudge 2810(1543) 完美立方 / Poj 1543 Perfect Cubes
1.链接地址: http://bailian.openjudge.cn/practice/2810/ http://bailian.openjudge.cn/practice/1543/ http:/ ...
- Poj1543
Perfect Cubes Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 16522 Accepted: 8444 De ...
- Swift Enum 枚举
前言 枚举是一种自定义的数据类型,在 Swift 中枚举类型拥有相当高的自由度.在 Swift 语言中枚举是一级类型,它拥有在其他语言中只有类才拥有的一些特性,比如实例方法,实例构造器等. 枚举声明的 ...
随机推荐
- conda配置python混合开发环境一站式入门【全平台】
下载安装 清华的镜像 [https://mirror.tuna.tsinghua.edu.cn/help/anaconda/] 官方说明 [http://conda.pydata.org/docs/u ...
- Oracle EBS-SQL (BOM-13):检查未定义库存分的物料类.sql
select distinct msi.segment1 编码 , msi.description 描述 , msi.primary_ ...
- 转: JavaScript函数式编程(二)
转: JavaScript函数式编程(二) 作者: Stark伟 上一篇文章里我们提到了纯函数的概念,所谓的纯函数就是,对于相同的输入,永远会得到相同的输出,而且没有任何可观察的副作用,也不依赖外部环 ...
- ASP.net MVC3里的HandleErrorAttribute
在MVC3里使用HandleErrorAttribte类,有2种方式可以使用它,一是在类或者方法上直接使用HandleError属性来定义: // 在这里声明[HandleError]public c ...
- java代码收藏:获取HttpServletRequest中某一前缀的参数
public static Map getParametersStartingWith(ServletRequest request, String prefix) { Enumeration par ...
- SSH25个命令 + 深入SSH端口转发细节
OpenSSH是SSH连接工具的免费版本.telnet,rlogin和ftp用户可能还没意识到他们在互联网上传输的密码是未加密的,但SSH是加密的,OpenSSH加密所有通信(包括密码),有效消除了窃 ...
- 网易云课堂_程序设计入门-C语言_第四周:循环控制_1素数和
1 素数和(5分) 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推. 现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个 ...
- java中表示二进制、八进制、十进制、十六进制,double、float、整型
java里不能这样表示二进制,只能是 8,10,16进制 8: 前置 0 10: 不需前置 16: 前置 0x 或者 0X double:2 ...
- C# winfrom中Flash播放使用axShockwaveFlash控件设置透明XP出现白色背景解决办法,仿QQ魔法表情效果
//播放时 图片周围有锯齿白边出现 反锯齿处理暂无解决办法. 如有大神 请给我留言 新Form AllowDrop True 引用using System.IO; 拖1个Button p ...
- clinit和init(转载)
clinit和init(转载) 今天在看深入Java虚拟机的class文件结构时,看到了这么一句话, 可能出现在class文件中的两种编译器产生的方法是:实例初始化方法(名为<init> ...