Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2019
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. #pragma warning(disable:4786)
  2. #pragma warning(disable:4996)
  3. #include<bits/stdc++.h>
  4. #define pii pair<int,int>
  5. #define pll pair<long long ,long long>
  6. #define pli pair<long long , int>
  7. #define pil pair<int ,long long>
  8. #define pi acos(-1)
  9. #define pb push_back
  10. #define mkp make_pair
  11. #define all(a) a.begin(), a.end()
  12. #define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  13. #define ll long long
  14. #define MAX 300005
  15. #define INF 0x3f3f3f3f
  16. template <class T> inline T bigmod(T p,T e,T M){ll ret = 1LL;for(; e > 0LL; e >>= 1LL){if(e & 1LL) ret = (ret * p) % M;p = (p * p) % M;}return (T)ret;}
  17. template <class T> inline T modinverse(T a,T M){return bigmod(a,M-2,M);} // M is prime}
  18. using namespace std;
  19.  
  20. vector <ll> prime;
  21. bitset <100000010> bs;
  22.  
  23. void sieve ()
  24. {
  25. bs.set ();
  26. prime.pb(2LL);
  27. for (ll i = 3; i <= 100000000; i+=2)
  28. {
  29. if (bs[i])
  30. {
  31. prime.pb(i);
  32. for (ll j = 0; j<prime.size() && i*prime[j]<=100000000; j += i+i)
  33. {
  34. bs[i*prime[j]] = 0;
  35. }
  36. }
  37. }
  38. }
  39.  
  40. int main(){
  41. IOS
  42. //freopen("output.txt","w",stdout);
  43. sieve();
  44. int i=0;
  45. unordered_map<int,int>r,c;
  46. //cout<<prime.size();
  47. for(auto it=prime.begin();it!=prime.end();){
  48. i++;
  49. for(int j=1;j<=i;j++){
  50. r[(*it)]=i;
  51. c[(*it)]=j;
  52. it++;
  53. }
  54. }
  55. int t;
  56. cin>>t;
  57. for(int i=0;i<t;i++){
  58. int a;
  59. cin>>a;
  60. if(r[a]==0){
  61. cout<<"-1"<<endl;
  62. continue;
  63. }
  64. cout<<r[a]<<" "<<c[a]<<endl;
  65.  
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement