아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Пароль от сейфа

시간 제한2초메모리 제한1024 MB

요약
소문자 문자열이 주어질 때, 문자를 많아야 두 번 교환해 팰린드롬으로 만들 수 있는지 판정한다.
난이도

보통10점 중 5점

유형
문자열, 그리디, 구현
정답자
아직 제출이 없습니다

문제

Во время первого своего задания Дэдпул понял, что даже с его регенерацией без оружия врагов так просто не одолеть. Поэтому он решил, что настало время открыть сейф, в котором он хранил свое оружие.

Но просто как всегда не получилось. На сейфе оказался замок с кодом, который Дэдпул забыл. Все, что он помнил --- код замка представляет собой палиндром из строчных латинских букв. Дэдпул заметил, что сейчас на замке набрана комбинация, очень похожая на нужную, но что-то все равно не так. Так как у него и своих дел хватает, он хочет потратить на взлом замка как можно меньше времени, а именно рассчитывает получить правильную комбинацию, поменяв местами не более двух символов.

С этой задачей он и обратился к вам. Помогите супергерою --- скажите, можно ли из набранной комбинации получить палиндром таким способом.

입력

В единственной строке входного файла содержится строка ss (1≤∣s∣≤1051 \le |s| \le 10^5), состоящая из строчных латинских букв.

출력

В единственной строке выходного файла выведите <<YES>>, если из строки ss можно получить палиндром, поменяв не более двух символов местами и <<NO>> в противном случае.

예제3

  1. 예제 1

    입력
    abacaba
    
    예상 출력
    YES
    
  2. 예제 2

    입력
    abbcb
    
    예상 출력
    NO
    
  3. 예제 3

    입력
    abab
    
    예상 출력
    YES