// 適当な時刻まで探索して、 // 最後 2 回の到着時刻で周期を決め打ってしまう // 厳密解の意味では N^3M 解法?(自信なし) #include #include #include using namespace std; using ll = long long; bool dp[1000000][100]; int frm[10000]; int to[10000]; ll N, M, T, ans; int main(){ cin >> N >> M >> T; vector vec; for(int i=0;i> a >> b; vec.emplace_back(N*a+b); } sort(vec.begin(), vec.end()); vec.erase(unique(vec.begin(), vec.end()), vec.end()); M = vec.size(); for(int i=0;i= 0){ ll p = t2 - t1; ll n = (T-T0)/p+1; ans += (dp[T-n*p][v] ? 1 : 0); } } } if(ans==0){ ans-=1; } cout << ans << endl; return 0; }