結果
問題 | No.2125 Inverse Sum |
ユーザー |
|
提出日時 | 2022-11-18 22:44:52 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 546 bytes |
コンパイル時間 | 2,102 ms |
コンパイル使用メモリ | 200,300 KB |
最終ジャッジ日時 | 2025-02-08 22:10:01 |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 TLE * 7 |
ソースコード
#include<bits/stdc++.h> using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); long long P,Q; cin>>P>>Q; if(P>Q*2){ cout<<"0\n"; return 0; } long long G=gcd(P,Q); P/=G,Q/=G; vector<array<long long,2>>ans; for(long long i=Q/P+1;i<=2*Q/P;i++){ if(Q*i%(P*i-Q)==0){ ans.push_back({i,Q*i/(P*i-Q)}); if(i!=Q*i/(P*i-Q)){ ans.push_back({Q*i/(P*i-Q),i}); } } } sort(ans.begin(),ans.end()); cout<<ans.size()<<'\n'; for(auto i:ans)cout<<i[0]<<' '<<i[1]<<'\n'; }