Как найти индекс лишнего символа, при удалении которого слово становится палиндромом?
Как по мне, то лучше пробегать по всему слову, и по-очереди удалять буквьі и проверять на палиндромность. Если слово палиндром - возвращать индекс той буквьі, если по оканчании прохода не бьіло ниединого палиндрома - вернуть 0
на счет "идеи":  честно говоря я не совсем понял что ты хочешь сравнивать после нахождения первого расхождения.
1) идем до расхождения (середина - палиндром)
2) выкидываем слева - продолжаем до расхождения  (середина - палиндром)
3) выкидываем справа - продолжаем до расхождения  (середина - палиндром)
нет решенияdef poly(s):
    L = len(s) - 1
    L2 = (L>>1) + 1
    print(s,L,L2)
    i=0
    while s[i]==s[L-i]:
        print('1:', i, s[i], s[L-i])
        i+=1
        if i==L2: return 0
    print('2:', i, s[i], s[L-i])
    k=i
    while s[k+1]==s[L-k]:
        print('3:', k, s[k+1], s[L-k])
        k+=1
        if k==L2: return i
    print('4:', k, s[k], s[L - k])
    k=i
    while s[k]==s[L-k-1]:
        print('5:', k, s[k], s[L-k-1])
        k+=1
        if k==L2: return L-i
    print('6:', k, s[k], s[L - k])
    return None
while True:
    s = input()
    print(s)
    print(poly(s))qwertyytrewq
qwertyytrewq
qwertyytrewq 11 6
1: 0 q q
1: 1 w w
1: 2 e e
1: 3 r r
1: 4 t t
1: 5 y y
0
qwertyytrwq
qwertyytrwq
qwertyytrwq 10 6
1: 0 q q
1: 1 w w
2: 2 e r
3: 2 r r
3: 3 t t
3: 4 y y
3: 5 y y
2
qwrtyytrewq
qwrtyytrewq
qwrtyytrewq 10 6
1: 0 q q
1: 1 w w
2: 2 r e
4: 2 r e
5: 2 r r
5: 3 t t
5: 4 y y
5: 5 y y
8
qwertyytrewqww
qwertyytrewqww
qwertyytrewqww 13 7
2: 0 q w
3: 0 w w
4: 1 w w
6: 0 q w
None