A - Hanzo vs. Genji
留坑。
B - Fraction
水。
1 #include <bits/stdc++.h> 2 using namespace std; 3 4 inline int gcd(int a, int b) 5 { 6 return b ? gcd(b, a % b) : a; 7 } 8 9 int t, n; 10 int a[10], b[10]; 11 12 int main() 13 { 14 scanf("%d", &t); 15 for (int kase = 1; kase <= t; ++kase) 16 { 17 scanf("%d", &n); 18 for (int i = 1; i <= n; ++i) scanf("%d", a + i); 19 for (int i = 1; i <= n; ++i) scanf("%d", b + i); 20 int p = b[n], q = a[n]; 21 for (int i = n - 1; i >= 1; --i) 22 { 23 int tq = a[i] * q + p; 24 int tp = b[i] * q; 25 p = tp, q = tq; 26 int Gcd = gcd(p, q); p /= Gcd, q /= Gcd; 27 } 28 int Gcd = gcd(p, q); p /= Gcd, q /= Gcd; 29 printf("Case #%d: %d %d\n", kase, p, q); 30 } 31 return 0; 32 }