#include<bits/stdc++.h>
#define rep(i, n) for (Int i = 0; i < (int)(n); i++)
#define rrep(i,n) for(Int i=(n)-1;i>=0;i--)
#define FOR(i,a,b) for(Int i=a;i<=Int(b);i++)
#define __MAGIC__ ios::sync_with_stdio(false);cin.tie(nullptr);
//#include <atcoder/all>
//using namespace atcoder;
typedef long long Int;
const long long INF = 1ll << 60;
using namespace std;
using p = pair<int,int>;
using Graph = vector<vector<int>>;
const int dx[4] = {1, 0, -1, 0};
const int dy[4] = {0, 1, 0, -1};

int main(){
  __MAGIC__
  int n;
  cin >> n;
  int day = 0;
  int total = 0;
  while (total < n) {
    day++;
    total += day;
  }
  cout << day << endl;
  return 0;	


	//  cout << ans << endl;
  //  cout << (ans ? "Yes" : "No") << endl;


}
#include<bits/stdc++.h>
using namespace std;
#define endl "\n"
#define pb push_back
typedef long long ll;
const double pi = acos(-1.0);
#define memset(a,b) memset(a,b,sizeof(a))
const int mod = (1 ? 1000000007 : 998244353);
const int inf = (1 ? 0x3f3f3f3f : 0x7fffffff);
const int dx[] = { -1,0,1,0 }, dy[] = { 0,1,0,-1 };
const ll INF = (1 ? 0x3f3f3f3f3f3f3f3f : 0x7fffffffffffffff);
ll gcd(ll a, ll b) { return b ? gcd(b, a % b) : a; }
ll poww(ll a, ll b) { ll s = 1; while (b) { if (b & 1)s = (s * a) % mod; a = (a * a) % mod; b >>= 1; }return s % mod; }
struct quickread {
	template <typename _Tp> inline quickread& operator >> (_Tp& x) {
		x = 0; char ch = 1; int fh = 1;
		while (ch != '-' && (ch > '9' || ch < '0')) ch = getchar();
		if (ch == '-') { fh = -1, ch = getchar(); }
		while (ch >= '0' && ch <= '9') { x = (x << 1) + (x << 3) + (ch ^ 48); ch = getchar(); }
		x *= fh; return *this;}
}cinn;

const int N = 1e5 + 11;
ll n,m;

void solve()
{
	ll a,b,c,d;
	cin>>a;
	if(a%2==0)cout<<"White"<<endl;
	else cout<<"Black"<<endl;
}

int main()
{
    ios::sync_with_stdio(false); cin.tie(0);
    ll T = 1;
    //cin >> T;
    while (T--)solve();
    return 0;
}
