zoukankan      html  css  js  c++  java
  • 2810:完美立方-poj

    2810:完美立方

    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    形如a3= b3 + c3 + d3的等式被称为完美立方等式。例如123= 63 + 83 + 103 。编写一个程序,对任给的正整数N (N≤100),寻找所有的四元组(a, b, c, d),使得a3 = b3 + c3 + d3,其中a,b,c,d 大于 1, 小于等于N,且b<=c<=d。

    输入
    一个正整数N (N≤100)。
    输出
    每行输出一个完美立方。输出格式为:
    Cube = a, Triple = (b,c,d)
    其中a,b,c,d所在位置分别用实际求出四元组值代入。

    请按照a的值,从小到大依次输出。当两个完美立方等式中a的值相同,则b值小的优先输出、仍相同则c值小的优先输出、再相同则d值小的先输出。
    样例输入
    24
    样例输出
    Cube = 6, Triple = (3,4,5)
    Cube = 12, Triple = (6,8,10)
    Cube = 18, Triple = (2,12,16)
    Cube = 18, Triple = (9,12,15)
    Cube = 19, Triple = (3,10,18)
    Cube = 20, Triple = (7,14,17)
    Cube = 24, Triple = (12,16,20)
    暴力,尽可能减少循环次数而已
    代码:
    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    #include <stdlib.h>
    #include<vector>
    #include<queue>
    using namespace std;
    struct Xiaobaishu
    {
        int weight;
        char color[101];
    }Animal[100];
    int main()
    {
        int n;
        int i,j,k,l;
        cin>>n;
        for(i=2;i<=n;i++)//可以从5开始,因为5以内的不成立
        {
    
            for(j=2;j<=i-2;j++)
            {
                for(k=j;k<i-1;k++)
                {
                    for(l=k;l<i;l++)
                    {
                        if(i*i*i==j*j*j+k*k*k+l*l*l)
                        {
                            //Cube = 6, Triple = (3,4,5)
                            cout<<"Cube = "<<i<<','<<" Triple = "<<'('<<j<<','<<k<<','<<l<<')'<<endl;
                        }
                    }
                }
            }
        }
        return 0;
    }
     
    以大多数人努力程度之低,根本轮不到去拼天赋~
  • 相关阅读:
    socket套接字
    popen:让进程看似文件
    fdopen:让文件描述符像文件一样使用
    计算机"右击"管理,不出现界面,解决方案
    javaEE版本的eclipse中导入工程,发现server里面找不到工程,根本发布不了也不能运行
    初识springMVC
    数据库系统
    Red hat 下nfs服务器的搭建
    Linux下MySQL安装和配置
    复习Hibernate(1)
  • 原文地址:https://www.cnblogs.com/gcter/p/7380842.html
Copyright © 2011-2022 走看看