• + 0 comments

    The AI bros doing L33tCode are heavy now. These 1 liners are ridiculous and help no person. But below hopefully is the logic illustrated by some of the ChatGPT coders.

    public static int pageCount(int n, int p)
        {
            if (p > n)
                return -1; // early exit, can't be done
            
            
            var evenPages = n % 2 == 0;
            
            // p == begin of book, end of book, or left page end of book if odd pages
            if (p == 1 || n == p || (!evenPages && p == n - 1))
                return 0;
            else if (evenPages && p == n - 1)
                return 1;
            
            var fromLeftTurns = (int)Math.Floor((decimal)p / 2);
            var fromRightTurns = (int)Math.Floor((decimal)(n - p) / 2);
            
            return fromLeftTurns <= fromRightTurns ? fromLeftTurns : fromRightTurns;
        }