2015蓝桥杯C++A:方程整数解;星系炸弹

一、题目:方程整数解
方程: 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

发布了106 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/gl620321/article/details/104955999