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; }
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; }
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; }
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; }
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; }
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; }
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); }
var Lcm(Kernel& k,const var& f1,const var& f2){ return CPE::Mul(k,DivExact(k,f1, Gcd(k,f1,f2)),f2); }
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)); }
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 ); }