Beispiel #1
0
int main(void){
	int t;
	scanf("%d",&t);
	for(;t>0;t--){
		long long int n;
		scanf("%lld",&n);
		long long int x=(long long int)(n-sqrt(2*n));
		long long int a=(n+x+1)*(n-x)-2*x,b=2*(n-x);
		long long int gcd=Gcd(a,b);
		a/=gcd;
		b/=gcd;
		if(n==1){
			printf("%lld/%lld\n",a,b); 
			continue;
		}
		long long int x1=x+1;
		long long int a1=(n+x1+1)*(n-x1)-2*x1,b1=2*(n-x1);
		long long int gcd1=Gcd(a1,b1);
		a1/=gcd1;
		b1/=gcd1;
		long long int tmp;
		if(a1*b>a*b1){
			tmp=a1,a1=a,a=tmp;
			tmp=b1,b1=a,b=tmp;
		}
		printf("%lld/%lld\n",a,b); 
	}
	return 0;
}
Beispiel #2
0
void calculate(int index)
{
	for(int i=1;i<=n;i++)
	{
		N[i-1] = i;
	}
	for(int i=1;i<=m;i++)
	{
		M[i-1] = i;
	}
	for(int i=1;i<=p;i++)
	{
		P[i-1] = i;
	}

	for( int i=0;i<n;i++)
	{
		for(int j=0;j<m;j++)
		{
			int temp = Gcd(N[i],M[j]);
			N[i]/=temp;
			M[j]/=temp;
		}
	}

	for( int i=0;i<n;i++)
	{
		for(int j=0;j<p;j++)
		{
			int temp = Gcd(N[i],P[j]);
			
				N[i]/=temp;
				P[j]/=temp;
			
		}
	}
	
	for(int i=0;i<n;i++)
	{
		C[index]*=N[i];
	}

	for(int i=0;i<m;i++)
	{
		C[index]/=N[i];
	}

	for(int i=0;i<p;i++)
	{
		C[index]/=P[i];
	}

}
void solve ()
{
     HP gcd;
     if ( A <= B ) { gcd = A; A = B; B = gcd; }
     gcd = Gcd ( A , B );
     gcd.print ();
}
int main()
{
	unsigned int a = 1990, b = 1590;
	int gcd = 0;

	if((gcd = Gcd(a, b)) > 0)
		printf("The Zui Da Gong Yue Shu is: %d\n", gcd);
	return 0;
}
Beispiel #5
0
int main(void)
{
	int a, b, c;
	
	scanf("%d%d%d", &a, &b, &c);
	
	switch (c)
	{
		case 1: printf("%d", a + b);break;
		case 2: printf("%d", a - b);break;
		case 3: printf("%d", a * b);break;
		case 4: printf("%d", a / b);break;
		case 5: printf("%d", a % b);break;
		case 6: printf("%d", Gcd(a, b));break;
		case 7: printf("%d", (a * b)/Gcd(a, b));break;
	}
	return 0;
}
Beispiel #6
0
long long int Gcd(long long int a,long long int b){
	if(b<a) return Gcd(b,a);
	while(b){
		long long int t=a%b;
		a=b;
		b=t;
	}
	return a;
}
Beispiel #7
0
int main(int argc, char *argv[])
{
        if (argc != 3) {
                printf("please input two para\n");
                exit(1);
        }

        printf("%d\n", Gcd(atoi(argv[1]), atoi(argv[2])));
        return 0;
}
Beispiel #8
0
typeImgPtr Subsampling::transit(typeImgPtr src) 
{

	int srcW = src->GetWidth();
	int srcH = src->GetHeight();

	typeImgPtr dst(new MyImage());
	dst->Create(dstW, dstH, src->GetBPP());
	ResetDstColorTable(src, dst);

	int gcdW = Gcd(dstW, srcW);
	int gcdH = Gcd(dstH, srcH);

	int dstW_G = dstW / gcdW;
	int dstH_G = dstH / gcdH;
	int srcW_G = srcW / gcdW;
	int srcH_G = srcH / gcdH;

	int srcRowBytes = src->GetPitch();
	int srcClrCount = src->GetBPP() / 8;
	int dstRowBytes = dst->GetPitch();
	int dstClrCount = dst->GetBPP() / 8;

	for (int index = 0; index < dstClrCount; index++)
	{
		byte * srcBuf = (byte *)src->GetBits();
		byte * dstBuf = (byte *)dst->GetBits();

		for (int i = 0; i < dstH; i++)
		{
			for (int j = 0; j < dstW; j++)
			{
				byte g = srcBuf[(i * (srcH_G / dstH_G)) * srcRowBytes + (j * (srcW_G / dstW_G)) * srcClrCount + index];
				dstBuf[i * dstRowBytes + j * dstClrCount + index] = g;
			}
		}
	}

	return dst;
}
Beispiel #9
0
main ()
{
    int     i,
            j,
            scale,
            gcd,
            C[N][N],
            S[N][N],
            Madj[N][N],
            Tadj[N][N],
            Mdet,
            Tdet;


    Tdet = adjoint (T, Tadj);   /* inverse without division by */
    Mdet = adjoint (M, Madj);   /* determinant of T and M */
    matmult (Madj, Tadj, C);
    matmult (C, M, S);		/* Madj*Tadj*M -> S */
    scale = gcd = Mdet * Tdet;  /* scale factors of both determinants */
    for (i = 0; i < N; i++)	/* find the greatest common */
    {				/* denominator of S and determinants */
		for (j = 0; j < N; j++)
	    	gcd = Gcd (gcd, S[i][j]);
    }
    scale /= gcd;		/* divide everything by gcd to get */
    for (i = 0; i < N; i++)	/* matrix and scale factor in lowest */
    {				/* integer terms possible */
		for (j = 0; j < N; j++)
	    	S[i][j] /= gcd;
    }
    printf ("scale factor = 1/%d  ", scale);
    print_mat ("M=", M, N);     /* display the results */
    print_mat ("T=", T, N);
    print_mat ("S=", S, N);     /* subdivision matrix */
    exit (0);
}
Beispiel #10
0
		var Lcm(Kernel& k,const var& f1,const var& f2){
			return CPE::Mul(k,DivExact(k,f1, Gcd(k,f1,f2)),f2);
		}
Beispiel #11
0
int main()
{
	int m = 0, n = 0;
	scanf("%d%d",&m, &n);
	printf("最大因子:%d\n最小公倍数:%d \n",Gcd(m,n), m * n/Gcd(m,n));
}
Beispiel #12
0
int Gcd(int a, int b)
{
	if (0 == b) 
		return a;
	return Gcd(b, a % b);
}
HP  Gcd ( HP A , HP B )
{
    if ( B.len == 1 && B.s [0] == 0 ) return A;
    return Gcd ( B , A % B );
}