欢迎光临散文网 会员登陆 & 注册

CSP-J2022解密暴力60分

2022-12-05 18:37 作者:讽刺派数学家  | 我要投稿

//p越大 p+q越小  单调性 二分  mid=sqrt(n)/2   1...mid...sqrt(n)

//如何判断求的数在哪一半 ?或每次加一半? 

#include<bits/stdc++.h>

using namespace std;

int main(){

long long k,n,d,e,p,q;

cin>>k;

for(int i=1;i<=k;i++)

{

cin>>n>>d>>e;

bool flag=1;

long long t=sqrt(n);

long long mid=n/2;

for(p=1;p<=t;p++)

{

if(n%p==0)

{

q=n/p;

if((p+q)==(n-e*d+2))

{

cout<<p<<" "<<q<<'\n';

flag=0;

break;

}

}

}

if(flag) cout<<"NO"<<'\n'; 

}


CSP-J2022解密暴力60分的评论 (共 条)

分享到微博请遵守国家法律