Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.75
jambas92
58 / 57 / 3
Регистрация: 18.11.2010
Сообщений: 315
#1

И снова палиндром - C++

07.09.2011, 21:24. Просмотров 2310. Ответов 20
Метки нет (Все метки)

Здравствуйте! У кого какие идеи на счет решения этой задачи?

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

Я думаю так, надо с начало отсортировать символьный массив, затем посчитать сколько рас встречается каждый символ в массиве. Если символ встречается четное количество рас, то делим его по палам, часть в начало, часть в конец. Если символ встречается один рас и он еще встречается в алфавите раньше то мы его отправляем в середину.

на данном моменте проблема с подсчетом количества символов в символьном массиве.

Добавлено через 2 минуты
пример:
вход:QAZQAZ
выход: AQZZQA
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.09.2011, 21:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос И снова палиндром (C++):

Как сделать чтобы таймер дойдя до 0 стартовал снова и снова? - C++
Здравствуйте :) Как сделать чтобы таймер дойдя до 0 стартовал снова и снова? TimerSec = 59; TimerMin = 6; for(int i = TimerSec;...

Палиндром 2 С++ - C++
Задание: Напишите программу проверки, является ли введенное число палиндромом. Организуйте многократный ввод чисел для проверки, признак...

Палиндром - C++
Нужна программа которая распознает палиндром строчка, слово или нет ! Help ! 12321 ; abcba ;абв гв ба ; И мал Иван, а лупил у лип улана...

Палиндром - C++
Дайте реализацию программы, определяющей является ли входная строка палиндромом, пожалуйста. Заранее спасибо.

Палиндром с++ - C++
Помогите, пожалуйста, написать программу: Найдите самый большой палиндром, образованный в произведение двух трехзначных чисел.

Палиндром - C++
разработать программу которая определяет является ли данный текст палиндромом в среде C++

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
09.09.2011, 14:45 #16
AkA_ZadR, не представляю, каких "катёв" вы там сдавали, но подозреваю, что эти "кати" имели мало отношения к данной задаче.
0
AkA_ZadR
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 8
09.09.2011, 19:42 #17
Объясните условие или правило что ли на контестах палиндром единственное что бесит хотя вроде бы легко отпишитте мне детали палиндрома что это? как это? и так далее )))))
вот такие задачи бывают

Четырехзначный палиндром
(Время: 1 сек. Память: 16 Мб Сложность: 10%)
Требуется написать программу, определяющую, является ли четырехзначное натуральное число N палиндромом, т.е. числом, которое одинаково читается слева направо и справа налево.

Входные данные
Входной файл INPUT.TXT содержит натуральное число N (1000 ≤ N ≤ 9999).

Выходные данные
В выходной файл OUTPUT.TXT следует вывести слово «YES», если число N является палиндромом, или «NO» – если нет.

Примеры
№ INPUT.TXT OUTPUT.TXT
1 6116 YES
2 1231 NO
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
09.09.2011, 22:22 #18
AkA_ZadR, а теперь чётко, внятно, по-русски и (главное!) со знаками препинания объясните, чего вы хотите.
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
09.09.2011, 23:15 #19
silent_1991, вот этой задачи ленивцу нужно решение
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.09.2011, 08:18 #20
C++
1
2
3
4
5
6
7
8
9
10
11
#include <fstream>
 
int main(){
    std::fstream v("input.txt"), o("output.txt", std::ios::out);
    
    char s[5];
    
    v >> s;
    
    o << (*s - s[3] || s[1] - s[2] ? "NO" : "YES");
}
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
10.09.2011, 15:01 #21
iama, задачу-то я понял. Не понял я следующий набор букв:

Цитата Сообщение от AkA_ZadR Посмотреть сообщение
Объясните условие или правило что ли на контестах палиндром единственное что бесит хотя вроде бы легко отпишитте мне детали палиндрома что это? как это? и так далее )))))
Хотя может и понял, но от этого набором букв всё это быть не перестаёт...
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.09.2011, 15:01
Привет! Вот еще темы с ответами:

Палиндром - C++
Здравствуйте. Пытаюсь написать программу которая проверяет является ли введёное число с клавиатуры палиндромом. Метод проверки...

Палиндром - C++
Программа находит палиндромы в файле, но не совсем правильно, а именно: проверяет на условие палиндрома только первое слово. Что нужно...

Палиндром - C++
Здравствуйте! Наткнулся на такую задачу. Дана строка и нужно посчитать сколько палиндрома можно из нее сделать. Например: ввод: ababc ...

палиндром - C++
имеется 3 класса 1. проверяет является ли строка char* палиндромом 2. проверяет является ли vector&lt;int&gt; палиндромом 3. проверяет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
10.09.2011, 15:01
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru