简单的数学题目,就是解方程。
不过需要注意的是,解出来的两个解没有负数。
输入m和n,方程1:x + y = m;方程2:| x - y | = n;
x = (n + m)/ 2; y = (-n + m)/ 2;
注意:n + m和m - n 必须是偶数!~~做个判断就OK了。
AC的代码:
#include <iostream> using namespace std; int main() { int t, a, b; cin >> t; while(t--) { cin >> a >> b; if((b + a) % 2 && (-b + a) % 2) { cout << "impossible" << endl; continue; } int ans_1 = (b + a) / 2; int ans_2 = (-b + a) / 2; if(ans_1 > 0 && (b + a) % 2 == 0 && a - ans_1 > 0) cout << ans_1 << ' ' << a - ans_1 << endl; else if(ans_2 > 0 && (-b + a) % 2 == 0 && a - ans_2 > 0) cout << ans_2 << ' ' << a - ans_2 << endl; else cout << "impossible" << endl; } return 0; }
原文地址:http://blog.csdn.net/qq_25425023/article/details/45441759