Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define INF 1<<30
  4. #define MAX 10005
  5. #define FASTIO ios_base::sync_with_stdio(false), cin.tie(0), cout.tie(0);
  6. typedef long long ll;
  7.  
  8. void printEgyptian(int nr, int dr)
  9. {
  10. if(dr == 0 || nr == 0) return;
  11.  
  12. if(dr%nr == 0){
  13. cout << "1/"<<(dr/nr);
  14. return;
  15. }
  16.  
  17. if(nr%dr == 0){
  18. cout << nr/dr;
  19. return;
  20. }
  21.  
  22. if(nr > dr){
  23. cout << nr/dr << " + ";
  24. printEgyptian(nr%dr, dr);
  25. return;
  26. }
  27.  
  28. int n = dr/nr + 1;
  29. cout << "1/" << n << " + ";
  30. printEgyptian(nr*n-dr, dr*n);
  31. }
  32.  
  33.  
  34. int main()
  35. {
  36. FASTIO
  37. ///*
  38. //double start_time = clock();
  39. #ifndef ONLINE_JUDGE
  40. freopen("in.txt", "r", stdin);
  41. freopen("out.txt", "w", stdout);
  42. freopen("error.txt", "w", stderr);
  43. #endif
  44. //*/
  45. int nr, dr;
  46. cin >> nr >> dr;
  47. cout << "Egyptian Fraction Representation of "<<nr << "/"<<dr<< " is \n";
  48. printEgyptian(nr,dr);
  49.  
  50. //double end_time = clock();
  51. //printf( "Time = %lf ms\n", ( (end_time - start_time) / CLOCKS_PER_SEC)*1000);
  52.  
  53. return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement