## Covid Run Codechef October long  challenge problem solution| Codechef October long  challenge problem solution -

This is very first and easy problem of Codechef October long  challenge problem solution| Codechef October long  challenge problem solution.

### Problem Statement-

Covid-$19$ is spreading fast! There are $N$ cities, numbered from $0$ to $\left(N-1\right)$, arranged in a circular manner. City $0$ is connected to city $1$$1$ to $2$$\dots$, city $\left(N-2\right)$ to city $\left(N-1\right)$, and city $\left(N-1\right)$ to city $0$.

The virus is currently at city $X$. Each day, it jumps from its current city, to the city $K$ to its right, i.e., from city $X$ to the city $\left(X+K\right)\mathrm{%}N$. As the virus jumps, the cities in between don't get infected. Cities once infected stay infected. You live in city $Y$Find if it will reach your city eventually. If it will, print YES, else print NO.

### Input:

• The first line of the input consists of an integer $T$, the number of test cases.
• The first and only line of each test case contains four space-separated integers - $N$$K$$X$ and $Y$, denoting the number of cities, the size of jumps, Covid's current city, and the city that you live in, respectively.

### Output:

For each test case, in a new line, print YES if Covid shall reach your city after a finite number of days, else print NO.

### Constraints

• $1\le T\le 100$
• $1\le N\le 1000$
• $0\le X,Y\le N-1$
• $0\le K\le 1000$

• Subtask 1 - 100% - Original constraints

### Sample Input:

2
6 2 5 3
12 3 4 2


### Sample Output:

YES
NO


### Explanation:

• In the first sample, Covid starts at city $5$, then goes to city $1$, and then from city $1$ to city $3$. Thus, it reaches the city that you live in.

• In the second sample, Covid starts at city $4$, goes to city $7$, then $10$$1$, then $4$$7$$10$$\dots$, and so on. It never reaches city $2$.

Let's directly jump into solution
according to problem statement take input t= total number of test cases .
next line contain n,k,xand y
take input for n,k,x and y.
virus is currently at city x.
spreading rate of virus is k means virus can jump k city from its currenty position x.
Question says that you are living currently at y city so you have to tell that virus may infect you or not.

Logic-
Approach of this question is very simple simply you have to jump k step from current city and if this goes out of (N-1) city  it will
return back to city (n+k)%n th city.

dont try to think too much follow steps as mentioned in question it is called bruete force approach.

My approach-

My approach says that if the virus currently at city x in the next step it will jump to (x+k)%n th city.
What i will do i will maintain a  flag variable that will tell me that virus can reach to place y or not.

step 1-If virus already at position y. so i have to simply return true.otherwise, I will move form current city to x+k th city.in this case i will mark my flag as true and terminate the loop.
step 2- if virus reach again at x position it mean it will never reach to city y and the person who is sitting in city y is safe.
in this case i will mark my flag as false and terminate the loop.

finally, i will print the result according to the flag

if(z){
cout<<"YES"<<endl;
}
else{
cout<<"NO"<<endl;
}

Entire code solution is given below-