社区讨论
2023年CSP-J【解密】求大佬看看哪里有错
学术版参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @lo2a1lbl
- 此快照首次捕获于
- 2023/10/23 10:27 2 年前
- 此快照最后确认于
- 2023/11/03 10:39 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
#define ll unsigned long long
ll k;
void ans(ll n,ll e,ll d)
{
double p_and_q,p_except_q,p,q,p_except_q1,p_except_q2;
p_and_q=n-e*d+2;
p_except_q=sqrt(pow(p_and_q,2)-(double)4*n);
p=(p_and_q+p_except_q)/2.0;
q=p_and_q-p;
if(p>0&&q>0)
{
if(p>q) swap(q,p);
if(p!=(ll)p*10/10||q!=(ll)q*10/10)
cout<<"NO"<<endl;
else
cout<<p<<" "<<q<<"\n";
}
else
{
p=(p_and_q-p_except_q)/2.0;
q=p_and_q-p;
if(p>q) swap(q,p);
if(p!=(ll)p*10/10||q!=(ll)q*10/10)
cout<<"NO"<<endl;
else
cout<<p<<" "<<q<<"\n";
}
}
int main()
{
cin>>k;
for(int i=1;i<=k;i++ )
{
ll n,e,d;
cin>>n>>e>>d;
ans(n,e,d);
}
return 0;
}
是用数学方法做的,只有50分
记录
回复
共 3 条回复,欢迎继续交流。
正在加载回复...