一、题目:方程整数解
方程: a^2 + b^2 + c^2 = 1000
这个方程有正整数解吗?有:a,b,c=6,8,30 就是一组解。 你能算出另一组合适的正整数解吗?
请填写该解中最小的数字。
分析思路:
暴力解法
代码:
#include<iostream>
using namespace std;
int main(){
for(int a=1;a<35;a++){
for(int b=1;b<35;b++){
for(int c=1;c<35;c++){
if(a*a+b*b+c*c==1000)
cout<<a<<" "<<b<<" "<<c<<endl;
}
}
}
return 0;
}
答案:6 8 30
二、题目:星系炸弹
在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。
每个炸弹都可以设定多少天之后爆炸。
比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。
有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。
请填写该日期,格式为 yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19
分析思路:
1.可以利用excel,计算日期
2.可以手动计算
3.代码
二、2014/11/9到2015/11/9 365天,
2015/11/9到2016/11/9 366天,
2016/11/9到2017/11/9 365天,
365+366+365-1000=96天,再从2017/11/9往回减96天,依次-9=87,
-31=56,-30=26,剩下的26天在8月里面,31-26=5,所以是2017-08-05
三、代码:
#include<iostream>
using namespace std;
int main(){
int i=21+31;
i+=365; //2015年
i+=366; //2016年
i+=31+28+31+30+31+30+31+5;
cout<<i<<endl;
return 0;
}
//2017-08-05
答案:2017-08-05