#include #include #include #include #include #include #include std::map IndexMap; long double Array[400][400]; int main() { int n, m, a, b; std::string buffer1, buffer2; char buf1[4], buf2[4]; while(1) { memset(Array, 0, sizeof(Array)); IndexMap.clear(); scanf("%d", &n); for(int i = 0; i < n; i++) { Array[i][i] = 1; } if(!(n)) { return 0; } for(int i = 0; i < n; i++) { scanf("%s", buf1); buffer1 = buf1; IndexMap[buffer1] = i; } scanf("%d", &m); for(int i = 0; i < m; i++) { scanf("%s %s %d:%d", buf1, buf2, &a, &b); buffer1 = buf1; buffer2 = buf2; Array[IndexMap[buffer1]][IndexMap[buffer2]] = ((long double) (b)) / a; // Array[IndexMap[buffer2]][IndexMap[buffer1]] = ((long double) (b)) / a; } // for(int i=0; i 1 + 1e-10) { ok = 0; break; } } if(ok) printf("Ok\n"); else printf("Arbitrage\n"); } }