社区讨论
如何二分?
P8814[CSP-J 2022] 解密参与者 3已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mhj0ixvd
- 此快照首次捕获于
- 2025/11/03 18:44 4 个月前
- 此快照最后确认于
- 2025/11/03 18:44 4 个月前
my best friend说这道题得二分,他让我尝试一下pq二分,或者p+q二分,再次求问如何二分awa
CPP#include<bits/stdc++.h>
using namespace std;
long long N,n,p,q,e,d;
int main(){
cin >>N;
for(long long i=1;i<=N;i++){
bool flag=false;
cin >>n>>e>>d;
long long ed=e*d;
for(p=1;p<=sqrt(n);p++){
q=n/p;
if(p*q!=n){
continue;
}
if(p+q==n-ed+2){
cout<<p<<" "<<q<<endl;
flag=true;
break;
}
}
if(!flag){
cout<<"NO"<<endl;
}
}
return 0;
}
thx
回复
共 2 条回复,欢迎继续交流。
正在加载回复...