Advertisement
make_treap

pitagora2

Mar 30th, 2017
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.46 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream f("pitagora2.in");
  4. ofstream g("pitagora2.out");
  5. long long i,j,n,a,x,y,c,ma=1LL<<60,nr,d[1<<10];
  6. int main()
  7. {
  8. f>>n;
  9. for(i=1;i*i<=n;++i)
  10. if(n%i==0) d[++nr]=i,d[++nr]=n/i;
  11. for(i=1;i<=nr;++i)
  12. for(j=1;j<=nr;++j)
  13. {
  14. x=1LL*d[i]*d[j];
  15. y=n*n/x;
  16. a=(y-x)/2;
  17. c=(y+x)/2;
  18. if(a*a+n*n==c*c&&a+n>c) ma=min(ma,a);
  19. }
  20. g<<ma;
  21. return 0;
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement