2015-第六届蓝桥杯大赛个人赛省赛(软件类)真题 C大学A组 1.方程正整数解

题目描述

方程: a*a + b*b + c*c = 1000
这个方程有正整数解吗?有:a,b,c=6,8,30 就是一组解。
你能算出另一组合适的解吗?
请填写该解中最小的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
分析:比较简单,直接暴力就好了,类似于一个打表的过程:

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
    
    
	for(int i=1;i<32;i++){
    
    //32*32=1024
		for(int j=i;j<32;j++){
    
    
			for(int k=j;k<32;k++){
    
    
				if(i*i+j*j+k*k==1000){
    
    
					cout<<i<<' '<<j<<' '<<k<<endl;
				}
			}
		}
	}
	return 0;
}

输出:

6 8 30
10 18 24

所以答案是 10

猜你喜欢

转载自blog.csdn.net/interestingddd/article/details/114754808