#include int main(void) { int N, M; scanf("%d %d", &N, &M); for (int i = 0; i < M; i++) { int A, B; scanf("%d %d", &A, &B); /* Use vertex number as fixed topological order. Always direct the edge from the lower-numbered to higher-numbered vertex. Since every edge goes "upward" in this ordering, no cycle is possible. */ if (A < B) printf("0\n"); /* A -> B */ else printf("1\n"); /* B -> A */ fflush(stdout); } return 0; }