В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
graulity
graulity
26.08.2022 18:16 •  Информатика

Вс++. . как вы помните, месклениты отправились в экспедицию. однажды руководителю экспедиции потребовалось отправить на разведку специальный отряд, состоящих из лучших мескленитов. для этого он выстроил всю команду в шеренгу. цвет панциря каждого мескленита обозначается заглавной латинской буквой (от "a" до "z" ). в целях времени руководитель собирается выбрать из шеренги несколько подряд стоящих. кроме того, он считает, что разведка будет более удачной, если выбранный отряд будет симметричен по цветам панцирей. например, отряд "rgbgr" будет симметричным, а отряд "rgrb" – нет. требуется выбрать из шеренги мескленитов максимально возможный отряд, удволетворяющий данным условиям. входные данные дана строка, длина которой не превосходит 255 символов – цвета мескленитов в шеренге. выходные данные выходные данные представляют собой строку – выбраный отряд мескленитов. если возможных вариантов ответа несколько, то требуется вывести находящийся ближе к началу шеренги.

Ответ:
01223
01223
25.08.2020 17:27
{Отряд — формирование, состоящее из нескольких человек, достаточно большой численности, сформированное с той или иной целью}
//Но будь по Вашему, мне не сложно
//Dev-C++ 4.9.9.2

#include <iostream>
#include <string>
using namespace std;

int main(){
    string s,smax,sp;
    int z=0;
    int max=0;
    bool b=true;
    bool bsub=false;
    cin>>s;
    for(int i=0;i<s.length();i++)
     for(int j=i+1;j<s.length();j++){
      if(s[i]==s[j]){
      sp=s.substr(i,j-i+1);
      b=true;
      z=0;
       while((z<=(sp.length()-1)/2)&&b){
         b=(sp[z]==sp[sp.length()-z-1]);
         z++;}
       if((b==true)&&(max<sp.length())){
                                   max=sp.length();
                                   smax="";
                                   smax=sp;
                                   bsub=true;
                                   }
       b=true;
       z=0;}}
      if(bsub==true)cout<<smax;
      else
      cout<<s[0];
      cin.get();
      cin.get();
     return 0;
}

Пример ввода 1:
CKACCANCKACBCAN
Пример вывода 1:
ACBCA
Пример ввода 2:
С
Пример вывода 2:
C
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?