This question evaluates string manipulation, lexicographic ordering, and algorithmic reasoning, including careful edge-case handling and time and space complexity analysis. Commonly asked in the Coding & Algorithms domain, it assesses practical application of algorithm design and correctness reasoning with emphasis on conceptual understanding and complexity trade-offs.
Given a palindromic string s of lowercase English letters, change exactly one character to obtain a new string that is not a palindrome and is lexicographically smallest among all such possibilities. If no such string exists, return an empty string. Explain your algorithm, prove correctness, and analyze time and space complexity. Provide code in your preferred language.