Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**************************************************
- _||||||_ ||||||||_ ||| ||| _|
- _|| ||_ ||| || ||| ||| |||
- ||| ||| ||| || ||| ||| |||
- ||| ||| |||___||| |||____||| |||
- |||||||||| ||||||||_ |||||||||| |||
- ||| ||| ||| || ||| ||| |||
- ||| ||| ||| || ||| ||| |||
- _||| |||_ _||||||||| _||| |||_ |-
- ***************************************************/
- #include <cstdio>
- #include <cstdlib>
- #include <cctype>
- #include <cmath>
- #include <cstring>
- #include <iostream>
- #include <iomanip>
- #include <vector>
- #include <list>
- #include <stack>
- #include <queue>
- #include <map>
- #include <set>
- #include <string>
- #include <utility>
- #include <sstream>
- #include <algorithm>
- #include <ctime>
- #include <cassert>
- #include <limits>
- using namespace std;
- #define PI acos(-1.0)
- #define mem(a,b) memset(a,b,sizeof(a))
- #define gcd(a,b) __gcd(a,b)
- #define pb push_back
- #define mp make_pair
- #define x first
- #define y second
- #define Sort(x) sort(x.begin(),x.end())
- #define FOR(i, b, e) for(int i = b; i <= e; i++)
- #define FORR(i, b, e) for(int i = b; i >= e; i--)
- #define FORI(i, s) for (__typeof ((s).end ()) i = (s).begin (); i != (s).end (); ++i)
- #define pr(x) cout<<x<<"\n"
- #define pr2(x,y) cout<<x<<" "<<y<<"\n"
- #define pr3(x,y,z) cout<<x<<" "<<y<<" "<<z<<"\n";
- #define ppr(a) cout<<a.x<<" "<<a.y<<"\n"
- #define READ(f) freopen(f, "r", stdin)
- #define WRITE(f) freopen(f, "w", stdout)
- typedef long long ll;
- typedef pair <int, int> pii;
- typedef pair <double , double> pdd;
- typedef pair <ll , ll > pll;
- typedef vector <int> vi;
- typedef vector <pii> vpii;
- typedef vector <ll > vl;
- //int dx[]={1,0,-1,0};int dy[]={0,1,0,-1}; //4 Direction
- //int dx[]={1,1,0,-1,-1,-1,0,1};
- //int dy[]={0,1,1,1,0,-1,-1,-1};//8 direction
- //int dx[]={2,1,-1,-2,-2,-1,1,2};
- //int dy[]={1,2,2,1,-1,-2,-2,-1};//Knight Direction
- #define MAX 50007
- #define EPS 1e-9
- ll gcdll(ll a, ll b){
- if(b == 0) return a;
- return gcdll(b, a%b);
- }
- int main()
- {
- //READ("in.in");
- //WRITE("out.out");
- ll v1,v2,d1,d2;
- int cs=1;
- while(1)
- {
- scanf("%lld",&v1);
- scanf("%lld",&d1);
- scanf("%lld",&v2);
- scanf("%lld",&d2);
- if(v1==0&&d1==0&&v2==0&&d2==0)break;
- if(d1*v2<=d2*v1)
- {
- printf("Case #%d: You owe me a beer!\nAvg. arrival time: ",cs++);
- }
- else
- {
- printf("Case #%d: No beer for the captain.\nAvg. arrival time: ",cs++);
- }
- v1*=2;
- v2*=2;
- ll g=gcdll(d1,v1);
- d1/=g;
- v1/=g;
- g=gcdll(d2,v2);
- d2/=g;
- v2/=g;
- ll lcm=(v1/gcd(v1,v2))*v2;
- ll lob=d1*(lcm/v1)+d2*(lcm/v2);
- g=gcdll(lcm,lob);
- lcm/=g;
- lob/=g;
- printf("%lld",lob);
- if(lcm!=1)printf("/%lld",lcm);
- printf("\n");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment