Загрузка...

Как заменить определенные символы в файле на другие?

Тема в разделе C/C++ создана пользователем silveo 21 июн 2021. (поднята 21 июн 2021) 307 просмотров

  1. silveo
    silveo Автор темы 21 июн 2021 голый джарахов https://lolz.live/threads/7636153/ 270 2 июл 2018
    ЕГЭ через 4 дня, выручайте))
    Например, дан файл в котором записано XYZZYXZZYXXZYZZXZZYYYYXZ
    Нужно заменить XZZY на A или AAAA с помощью цикла for ( в общем так, чтобы потом с помощью этого же цикла for
    можно было посчитать максимальную строку, не содержащую подстроку XZZY)
    Оригинальное задание:[IMG]
    Буду очень благодарен)
    (если знаете, как решить эту задачу по другому, пишите, я пытаюсь и все никак не выходит))​
     
  2. SFATY
    SFATY 21 июн 2021 zelenka.guru/threads/2771075/ - Дизайн 409 10 окт 2019
    это решается с помощью срезов
     
  3. ReverseFlash
    ReverseFlash 21 июн 2021 25 13 май 2019
    Надеюсь работу с файлами добавишь
    C
    #include <iostream>
    #include <string>
    using namespace std;
    int main()
    {
    string inp,out;
    cin >> inp;
    int k = 0;
    for(int i =0; i<inp.size(); i++)
    {
    string buff = inp.substr(i,4);
    if(buff=="XZZY")
    {
    out.push_back('A');
    k =3;
    }
    else if(!k)
    out.push_back(inp[i]);
    else if(k)
    k--;
    }
    int max = 0;
    int buff = 0;
    for(int i =0; i<out.size(); i++)
    {
    if(out[i]!='A')
    buff++;
    else
    {
    if(max<buff)
    max=buff;
    buff=0;
    }
    }
    cout << out <<endl;
    cout << max;
    return 0;
    }
     
  4. Daemon
    Daemon 22 июн 2021 1680 8 янв 2021
    Чувак все в сто раз проще, это можно решить при помощи ворда + эксель.
    Через расширенный поиск в ворде заменяешь строку XZZY на символ абзаца ^p , вставляешь в эксель получившиеся строки, находишь при помощи функции ДЛСТР длины этих строк, далее находишь максимальную и прибавляешь 6.
    Почему 6?
    Например:
    XZZYXZXZXZZY
    Удаляем подстроки XZZY, получаем XZXZ, но мы можем не брать первый и последний символы подстроки XZZY, и тогда получим ZZYXZXZXZZ, что ровно на 6 символов больше чем XZXZ
     
    22 июн 2021 Изменено
    1. ReverseFlash
      Daemon, программа за 5 мин пишется
    2. Daemon
      ReverseFlash, Думаю, что этот способ не больше времени займет, возможно даже меньше. Ну если вам программой проще, то пожалуйста, я просто предложил один из способов решения. Может быть автору темы будет проще этим способом, раз у него возникла проблема с написанием программы.
Top
Загрузка...