#include using namespace std; #define int long long int N; signed main(){ cin>>N; vector> A(N); for(int i = 0; i < N; i++){ cin>>A[i].first>>A[i].second; } vector B(N); for(int i = 0; i < N; i++){ B[i] = i; } int ans = 0; do{ int now = 0; bool flag = true; for(int i = 0; i < N; i++){ if(A[B[i]].first > now){ now = A[B[i]].first; } else if(A[B[i]].second < now){ flag = false; } } ans += flag; }while(next_permutation(B.begin(),B.end())); cout << ans << "\n"; }