Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<stdio.h>
- #include<sstream>
- #include<string>
- #include<string.h>
- #include<math.h>
- #include<vector>
- #include<map>
- #include<algorithm>
- #include<queue>
- #include<set>
- #include<stdlib.h>
- #include<cmath>
- #include<stack>
- using namespace std;
- #define mod 1000000007
- #define pi 2*acos(0)
- #define PI 3.141592653589793
- #define pb push_back
- #define fr(i,a,b) for(i=a;i<=b;i++)
- #define frn(i,a,b) for(i=a;i>=b;i--)
- unsigned long long fact[1005];
- long long int A=1,B=1;
- void process()
- {
- long long int i,mini,limit;
- if(A<B)
- {
- mini=A;
- }
- else
- {
- mini=B;
- }
- if(mini==2)
- {
- limit=2;
- }
- else
- limit=(sqrt(mini))+1;
- fr(i,2,limit)
- {
- while(((A%i)==0)&&((B%i)==0))
- {
- A=A/i;
- B=B/i;
- }
- }
- //printf("%lld/%lld\n",A,B);
- return ;
- }
- int main()
- {
- long long int tC,nC;
- long long int t,x;
- scanf("%lld",&tC);
- fr(nC,1,tC)
- {
- A=1;
- B=1;
- long long int temp;
- scanf("%lld %lld",&t,&x);
- long long int arr[t+7],i;
- fr(i,1,t)
- {
- scanf("%lld",&temp);
- arr[i]=x-temp;
- A=((A%mod)*(arr[i]%mod))%mod;
- B=((B%mod)*(x)%mod)%mod;
- }
- process();
- if(A==0)
- {
- printf("Case %lld: 0\n",nC);
- }
- else if(A==B)
- {
- printf("Case %lld: 1\n",nC);
- }
- else
- printf("Case %lld: %lld/%lld\n",nC,A,B);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment