题目:Tic Tac DREAMIN’
链接:https://ac.nowcoder.com/acm/contest/120563/H 来源:牛客网
小红在二维平面地图上标记了两个关键点 𝐴 ( 𝑥 𝑎 , 𝑦 𝑎 ) A(x a ,y a ) 和 𝐵 ( 𝑥 𝑏 , 𝑦 𝑏 ) B(x b ,y b )。 她现在需要在 𝑥 x 轴上寻找一个锚点 𝑂 ( 𝑥 , 0 ) O(x,0),使得以 𝐴 , 𝐵 , 𝑂 A,B,O 为顶点的三角形面积恰好等于 2 2。 请你帮小红判断是否存在符合条件的锚点横坐标 𝑥 x。如果存在,请找出一个符合条件的 𝑥 x。
代码
#include <bits/stdc++.h> using namespace std; long long cross(long long xa, long long ya, long long xb, long long yb) { return xa * yb - xb * ya; } int main() { cout << fixed << setprecision(9); long long xa, ya, xb, yb; cin >> xa >> ya >> xb >> yb; long long target = 4; double x; long long k = ya - yb; long long C = cross(xa, ya, xb, yb); if (k != 0) { x = static_cast( target -C) / k; cout << x << endl; } else { if (llabs(C) == target) { cout << 0.000 << endl; } else { cout << "no answer" << endl; } } return 0; }

京公网安备 11010502036488号