Problem:
Score : 100 points

Problem Statement

You are given three integers A, B and C.
Determine whether C is not less than A and not greater than B.

Constraints

-100≤A,B,C≤100

A, B and C are all integers.

Input

Input is given from Standard Input in the following format:

A B C

Output

If the condition is satisfied, print Yes; otherwise, print No.

Sample Input 1

1 3 2

Sample Output 1

Yes

C=2 is not less than A=1 and not greater than B=3, and thus the output should be Yes.

Sample Input 2

6 5 4

Sample Output 2

No

C=4 is less than A=6, and thus the output should be No.

Sample Input 3

2 2 2

Sample Output 3

Yes

Solution in C++14 (GCC 5.4.1) (judge verdict: Runtime Error)

#include<cstdio>
#include<bits/stdc++.h>
typedef long long int ll;
#define REP(i, n) for(int i = 0; i < (n); i++)
#define FOR_IN(i, a, b) for(int i = (a); i < (b); i++)
#define BETWEEN(x, a, b) ((x) >= (a) && (x) <= (b))
#define BIT(b, i) (((b) >> (i)) & 1)
#define LOG_F 1
#define LOG(...) if(LOG_F) fprintf(stderr, __VA_ARGS__)

using namespace std;

ll pow(int x, int n){
  return n == 0 ? 1 : x * pow(x, n - 1);
}


/*
n m
a1 b1 c1
..
am bm cm

n 1000
m 2000
ci -10^9 10^9
 */
const ll INF = pow(10,13);
int n,m;
ll G[1000][1000];
ll d[1000];

ll sum(ll a, ll b){
  if(a==-INF || b==-INF) return -INF;
  return a+b;
}

void solve(){
}

int main(){
  REP(i,1000){
    REP(j,1000){
      G[i][j] = -pow(10,10);
    }
    d[i] = -INF;
  }

  cin>>n>>m;
  REP(i,m){
    int a,b,c;
    cin>>a>>b>>c;
    G[a-1][b-1] = c;
  }

  d[0] = 0;
  REP(k, 4000){
    bool update = false;
    REP(i,n){
      REP(j,n){
        if(d[i] < d[j] + G[j][i]){
          d[i] = d[j] + G[j][i];
          update = true;
        }
      }
    }
    if(!update){
      cout << d[n-1] <<endl;
      return 0;
    }
  }

  cout<<"inf\n";

  return 0;
}