本文主要是介绍1103 缘分数 (20 分),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
思路
- 模拟
代码
/*
1. 遍历每个值去判断
2. 溢出int,用long long
3. 注意乘法溢出
*/
#include <iostream>
#include <cmath>
using namespace std;
using LL = long long;
int main() {int m, n;cin >>m >> n;bool tag1 = false;for(int i = m; i <= n; i++){int j = i - 1;LL u = i*1ll*i*i;LL v = j*1ll*j*j;
// LL v = (LL)j*j*j;LL c = u - v;LL C = sqrt(c);if(C*C != c) continue;LL a;for(a = C-1; a > 0; a--){LL b = a - 1;if(a*a + b*b == C){tag1 = true;cout<<i<<" "<<a<<endl;break;} }}if(!tag1) cout<<"No Solution"<<endl;return 0;
}
这篇关于1103 缘分数 (20 分)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!