分析:数学公式推到:
1.tan(a+b) = ( tan(a) + tan(b) ) / (1 – tan(a) * tan(b) )
2.tan( atan(x) ) = x
根据公式1和2有:
arctan(1/s) = arctan(1/u)+arctan(1/v)
所以得1/s = tan( arctan(1/u)+arctan(1/v) ) = (tan(arctan(1/u)) + tan(arctan(1/v)))/(1-tan(arctan(1/u))*tan(arctan(1/v))) = (1/u + 1/v) / (1 - 1/(uv))
所以解得 uv = 1 + us + vs
所以有:uv-us-vs=1。
注意用int取整有误差,不推荐。
#include<iostream> using namespace std; int main() { int t; double s,u; cin>>t; while(t--) { cin>>s>>u; puts("1"); } return 0; }
时间: 2024-11-12 03:48:48