枚举-完美立方

诶,为了期末,好久没有(其实也就一个月)写这玩意了emmmm

为了贯彻落实社会主义核心价值观,最近打算把程序算法的相关知识从头串一遍.

(感觉自己学得好散,而且忘了一大半了QAQ)

这样的话每天能更几篇也没太有数,为了方便打算每个题都更一篇,(顺便刷刷总篇数(bushi)).

其实写写博客满满的收获感的,虽然没有某些dl写cf或者leetcode周赛那么系统专业,,,(dl岂是我能干得上的啊!!!)

嗷嗷嗷!!!

哦对还得把就会用万能头文件的毛病改改~~~

哦对了,题目直接写在注释里了.^_^

 1 //本题要求输出a<30且满足:
 2 /*a^3=b^3+c^3+d^3
 3  * a>d>c>b
 4  * 且均不为0
 5  * z这个题四个循环倒是没啥问题,
 6  * 关键在于abcd四个数的范围
 7  * 要求这四个数的范围 的 下 界 是不能有重叠的(因为四个数不可能有两个是相等的)
 8  * 那样的话考虑a肯定大于2
 9  * 那a就是从2~30
10  * 所有的上界都是a
11  *
12  * b为最小的数范围,所以可以从最小数2开始
13  * c为第二个,从b到a
14  * d就是从c开始
15  * 本题说白了就是找范围,用范围定大小
16  * 
17  * 
18  */
19 
20 
21 
22 #include <iostream>
23 using namespace std;
24 int main(){
25     int a,b,c,d;
26     for(a=2;a<30;a++){
27         for(b=2;b<a;b++){
28             for(c=b;c<a;c++){
29                 for(d=c;d<a;d++){
30                     if(a*a*a==b*b*b+c*c*c+d*d*d){
31                         cout<<"a="<<a<<",b="<<b<<",c="<<c<<endl;
32                     }
33                 }
34             }
35         }
36     }
37     return 0;
38 }
39 
40 
41 //当然也可以挨个加特判^_^反正四个循环已经那么慢了嘛
42 #include <iostream>
43 using namespace std;
44 int main(){
45     int a,b,c,d;
46     for(a=2;a<30;a++){
47         for(b=2;b<a;b++){
48 
49             for(c=2;c<a;c++){
50                 if(c>b)
51                 for(d=2;d<a;d++){
52                     if(d>c)
53                     if(a*a*a==b*b*b+c*c*c+d*d*d){
54                         cout<<"a="<<a<<",b="<<b<<",c="<<c<<endl;
55                     }
56                 }
57             }
58         }
59     }
60     return 0;
61 }

 

posted @ 2020-07-02 19:25  安之若醇  阅读(142)  评论(0编辑  收藏  举报
Live2D服务支持