Решение задачи "Самый длинный палиндром" с Codeforces

Без пояснения   Просмотров: 7


Вернувшись к решению задач, Гильдонг взялся за изучение палиндромов. Он выяснил, что палиндром это строка, которая равна своему перевороту. Например, строки «pop», «noon», «x», и «kkkkkk» являются палиндромами, а строки «moon», «tv», и «abab» не являются. Пустая строка также является палиндромом.

Гильдонгу очень понравился этот концепт, так что он решил немного с ним поиграть. У него есть n различных строк равной длины m. Он хочет удалить некоторые из этих строк (возможно, ни одну, или все) и переставить оставшиеся, чтобы их конкатенация была палиндромом. Он также хочет, чтобы палиндром был как можно длиннее. Помогите ему решить эту задачу!

Код

#include<bits/stdc++.h>
using namespace std;
int main()
{
	set <string> a;
	int n,m;
	cin>>n>>m;
	string s,t,x,mid,ans="";
	while(n--)
	{
		cin>>s;
		t=s;
		reverse(t.begin(),t.end());
		if(s==t) mid=t;
		else if(a.count(t)) ans+=t;
		a.insert(s);
	}
	x=ans;
	reverse(x.begin(),x.end());
	ans+=mid+x;
	cout<<ans.size()<<"\n"<<ans;

}

         


<div style=

A PHP Error was encountered

Severity: Notice

Message: Undefined index: first_name

Filename: templates/tasksdecision_view.php

Line Number: 133

Backtrace:

File: /var/www/u0984434/data/www/hsecodes.com/application/views/templates/tasksdecision_view.php
Line: 133
Function: _error_handler

File: /var/www/u0984434/data/www/hsecodes.com/application/controllers/Tasksdecision.php
Line: 120
Function: view

File: /var/www/u0984434/data/www/hsecodes.com/index.php
Line: 315
Function: require_once

Администратор Photo" /> Автор:


Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться