Problem:
Score: 100 points

Problem Statement

Takahashi the Jumbo will practice golf.

His objective is to get a carry distance that is a multiple of K, while he can only make a carry distance of between A and B (inclusive).

If he can achieve the objective, print OK; if he cannot, print NG.

Constraints

All values in input are integers.

1 \leq A \leq B \leq 1000

1 \leq K \leq 1000

Input

Input is given from Standard Input in the following format:

K
A B

Output

If he can achieve the objective, print OK; if he cannot, print NG.

Sample Input 1

7
500 600

Sample Output 1

OK

Among the multiples of 7, for example, 567 lies between 500 and 600.

Sample Input 2

4
5 7

Sample Output 2

NG

No multiple of 4 lies between 5 and 7.

Sample Input 3

1
11 11

Sample Output 3

OK

Solution in C (GCC 9.2.1) (judge verdict: Accepted)

#include <stdio.h>
#include <string.h>

void PrintOutput(int inputK, int inputA, int inputB, int multiplyA, int multiplyB)
{
    if (inputK * multiplyA == inputA)
    {
        printf("OK \n");
    }
    else if (inputK * (multiplyA + 1) <= inputB)
    {
        printf("OK \n");
    }
    else
    {
        printf("NG \n");
    }
}

void StartProgram()
{
    int inputK, inputA, inputB, multiplyA, multiplyB;
    
    //printf("Enter the value of K \n");
    scanf("%d", &inputK);
    //printf("Enter the value of A and B \n");
    scanf("%d %d", &inputA, &inputB);
    
    if(inputK > 1000)
    {
        printf("Wrong input... \n");
        StartProgram();
    }
    else if(inputB > 1000)
    {
        printf("Wrong input... \n");
        StartProgram();
    }
    else if(inputA > inputB)
    {
        printf("Wrong input... \n");
        StartProgram();
    }
    
    multiplyA = inputA / inputK;
    multiplyB = inputB / inputK;
    
    PrintOutput(inputK, inputA, inputB, multiplyA, multiplyB);
}

int main(int argc, const char * argv[]) {
  
    StartProgram();
    
    return 0;
}