#include #include #include #include #define MAX 1000000 using namespace std; vector prime(MAX + 1, true); int a, d, n; void sieve() { int i, j, limit; fill(prime.begin(), prime.end(), true); limit = (int)sqrt((double)(MAX)); prime[1] = false; for(int i = 4; i <= MAX ; i+=2) { prime[i] = false; } for(int i = 3 ; i <= limit ; i += 2) { if(prime[i]) { for(int j = i ; i * j <= MAX ; j+=2) { prime[i * j] = false; } } } } int main() { sieve(); while(cin >> a >> d >> n, a || d || n) { int counter = 0; for(int i = a ; true ; i += d) { if(prime[i]) { counter++; if(counter == n) { cout << i << endl; break; } } } } }