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

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

Войти
Регистрация
Восстановить пароль
 
Hi4ko
74 / 74 / 4
Регистрация: 21.10.2010
Сообщений: 376
#1

Задачи на строки не умею реализовывать - C++

25.09.2011, 20:15. Просмотров 761. Ответов 8
Метки нет (Все метки)

вообще со строками беда, не умею реализовывать и всё
Каждая задача на них - 3 часа убитого времени, а результат - неработающий быдлокод(ну каким ещё он может быть? )
вот, собственно, одна из задач

http://acm.timus.ru/problem.aspx?space=1&num=1786

помогите как можно красивее написать задачу, просьба написать сам код и объяснить алгоритм. Просто вообще никак не получаются строки.

Добавлено через 12 минут
помогите, пожалуйста(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2011, 20:15
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Задачи на строки не умею реализовывать (C++):

Не умею писать программы - C++
Пожалуйста помогите с задачами.Я не знаю как их сделать С клавиатуры вводится матрица размером n x m: 1)Вычислить сумму всех чисел...

не умею пользоваться функциями - C++
задание: дан массив целых чисел с кол.элементов n. проверить выполняется ли условие a=-a, то есть является правая половина зеркальным...

проверка чётности (сам не умею) - C++
Заданы два целых числа. Определить являются ли они оба четными или оба нечетными или какое из них четное, а какое нечетное.

Клиент-Сайт-Сервер, на чем реализовывать? - C++
Здравствуйте! Искал информацию и сдался, так что если подобная тема есть, то где-то очень глубоко. Задача заключается в следующем. На...

Не умею делать АЛГОРИТМИЧЕСКУЮ ЧАСТЬ кода С++ - C++
Помогите написать алг. часть:с (Буду весьма признателен) #include "stdafx.h" #include <conio.h> using namespace std; #include...

где лучше реализовывать методы в классе или вне - C++
читал где-то, что реализация метода в теле класса или вне его не одно и то же. так ли это и в чем разница?

8
fasked
Эксперт С++
4974 / 2554 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
25.09.2011, 20:20 #2
Поищите на тему хуков
0
Hi4ko
74 / 74 / 4
Регистрация: 21.10.2010
Сообщений: 376
25.09.2011, 20:27  [ТС] #3
Цитата Сообщение от fasked Посмотреть сообщение
Поищите на тему хуков
вы загнули. Для этой задачи это слишком серьёзно)
0
kravam
быдлокодер
1705 / 892 / 45
Регистрация: 04.06.2008
Сообщений: 5,524
25.09.2011, 20:30 #4
Ссыль нерабочая, дай сюда условие, посмотрим чё там за хуки такие.
0
Hi4ko
74 / 74 / 4
Регистрация: 21.10.2010
Сообщений: 376
25.09.2011, 21:00  [ТС] #5
Цитата Сообщение от kravam Посмотреть сообщение
Ссыль нерабочая, дай сюда условие, посмотрим чё там за хуки такие.
заработало всё)

Добавлено через 19 минут
До сих пор не могу решить, помогите(
0
softmob
1249 / 699 / 155
Регистрация: 20.02.2010
Сообщений: 1,035
25.09.2011, 21:24 #6
вот набросал, посмотри:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
#include <string>
using namespace std;
 
int main(void)
{
    string a("MyNameIsAlexander");
    string b("Sandro");
    unsigned int maxd=0,k=0,res,f;
 
    for (int i=0;i<6;i++)
    {
        for (int j=i;j<6;j++)
        {
            string::size_type loc1 =a.find(b.substr(i,b.size()-j));
            if (loc1!=string::npos)
            {
                if ((b.size()-j) >maxd) 
                {maxd=b.size()-j ;
                k=loc1;}
            }
        }
    }
 
    if (maxd)
    {
        res=b.size()-maxd;
        if (b.find(a.substr(k,maxd)))
        {
            if ((a[k-1]!='s') && (a[k-1]!= toupper(a[k-1])))
            {res++;}
        }
    }
    else
    {res=b.size();
    for (unsigned int i=0;i<=a.size()-b.size();i++)
    {
        if (a[i] == toupper(a[i])) 
        {f=1;
        break;
        }       
    }
    if (!f) res++;
    }
    cout << res << endl;
    system("pause");
}
0
fasked
26.09.2011, 00:41
  #7

Не по теме:

Цитата Сообщение от Hi4ko Посмотреть сообщение
вы загнули. Для этой задачи это слишком серьёзно)
Прошу прощения, видимо я ошибся вкладкой

0
kravam
быдлокодер
1705 / 892 / 45
Регистрация: 04.06.2008
Сообщений: 5,524
26.09.2011, 16:25 #8
softmob,для входных данных
C++
1
2
        string a("Sandto");
        string b("Sandro");
Выдаётся 2, а должно быть 1
1
softmob
1249 / 699 / 155
Регистрация: 20.02.2010
Сообщений: 1,035
26.09.2011, 17:35 #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <string>
using namespace std;
 
int main(void)
{
    string a("MyNameIsAlexander");
    string b("Sandro");
    unsigned int maxd=0,k=0,res,f,h=0,jj;
 
    for (int i=0;i<6;i++)
    {
        for (int j=i;j<6;j++)
        {
            string::size_type loc1 =a.find(b.substr(i,b.size()-j));
            if (loc1!=string::npos)
            {
                if (((b.size()-j) >maxd) && ((k-i)>=0) && (k+5-j)<a.size()) 
                {maxd=b.size()-j ;
                k=loc1;
                h=i;}
            }
        }
    }
 
    if (maxd)
    {
        res=0;
 
        if (a[k-h]!='S')
        {
            if ((a[k-h]=='s') || (a[k-h]== toupper(a[k-h])))
            {res++;
            }
            else 
            {res=res+2;}
        }
 
        jj=1;
        for (unsigned int i=k-h+1;i<k-h+1+b.size();i++)
        {
            if (a[i]!=b[jj]) {res++;}       
            jj++;
        }       
    }
    else
    {res=b.size();
    for (unsigned int i=0;i<=a.size()-b.size();i++)
    {
        if (a[i] == toupper(a[i])) 
        {f=1;
        break;
        }               
    }
    if (!f) res++;
    }
    cout << res << endl;
    system("pause");
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2011, 17:35
Привет! Вот еще темы с ответами:

Не умею работать с таймером! - Delphi
Сделал так что бы через МейнМеню менялись форма Shape на форме. Но нужно что бы ещё через меню запускалась пошаговая демонстрация этих...

Как реализовывать IEnumerator? - C#
Никак не могу вникнуть в то, как правильно реализовывать интерфейс IEnumerator. Мсдн и гугл не помогли. Поможете разобраться в том, что я...

AS 3.0 Где реализовывать логику? - ActionScript
Добрый день! В соответствии с концепцией MVC как представление, так и контроллер зависят от модели. Однако модель не зависит ни от...

Как правильно реализовывать интерфейс? - Java Сети
Добрый день. Возник вопрос. А как правильно реализовывать интерфейс и некий функционал с точки зрения архитектуры. Грубо говоря, сейчас...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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