#nullable enable #region var (_input, _iter) = (Array.Empty(), 0); T I() where T : IParsable { while (_iter >= _input.Length) (_input, _iter) = (Console.ReadLine()!.Split(' '), 0); return T.Parse(_input[_iter++], null); } #endregion Int128 k1 = 1000; var k4 = k1 * k1 * k1 * k1; var k5 = k4 * k1; var c = I(); c *= k5; Int128 pass = 0; Int128 fail = 10000000; while (fail - pass > 1) { var x = (fail + pass) >> 1; var y = x * x * x * x * x + x * k4; if (y <= c) pass = x; else fail = x; } var ans = (decimal)pass / 1000; Console.WriteLine(ans.ToString("F3"));