• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed SPOJ Flamaster

Aruba Cloud - Virtual Private Server VPS
0 głosów
86 wizyt
pytanie zadane 3 grudnia 2024 w C i C++ przez lisek123 Nowicjusz (120 p.)
zamknięte 3 grudnia 2024 przez lisek123

Witam

Napisałam kod w C++ do zadania Flamaster, opierając się troszkę na kodach innych. Problem jest taki że u mnie wszystko działa a w spoju wywala błędna odpowiedź. Testowałam kod u siebie dla różnych danych i wszystko działa, dlatego nie rozumiem czemu spoj nie chce zaakceptować odpowiedzi. Jestem początkująca i dopiero zaczynam przygodę z programowaniem w C++.

#include <iostream>
#include <string>

using namespace std;

int ile, powtorka;
string napis;

int main()
{
    cin >> ile;

    for(int i = 1; i <=ile; i++)
    {
        cin >> napis;
        char aktualnyZnak;

        for(int j = 0; j < napis.length(); j++)
        {
            powtorka = 1;
            aktualnyZnak = napis[j];
            while(napis[j] == napis[j+1])
            {
                powtorka++;
                j++;
            }
            if(powtorka == 1)
            {
               cout << aktualnyZnak;
            }
            else if(powtorka == 2)
            {
                cout << aktualnyZnak;
                cout << aktualnyZnak;
            }
            else
            {
                cout << aktualnyZnak;
                cout << powtorka;
            }
        }
    }
    return 0;
}

 

komentarz zamknięcia: Zadanie rozwiązane. Dodano w 14 linijce cout << endl; dzięki czemu program został zaakceptowny przez SPOJ'a.

1 odpowiedź

0 głosów
odpowiedź 3 grudnia 2024 przez reaktywny Nałogowiec (46,230 p.)
Nie znam tego zadania, ale warto podać komunikat błędu ze SPOJ-a.

Czy na pewno jedna pętla ma być w drugiej?

Może być problem ze wczytaniem danych testowych ze SPOJ-a.
1
komentarz 3 grudnia 2024 przez lisek123 Nowicjusz (120 p.)
Już ogarnęłam. Natchnęło mnie że program próbował wpisywać kolejny wyraz w linijce z wynikiem, więc dodałam cout << endl; nad linijkę z cin >> napis;. Program po tej zmianie został zaakceptowany przez SPOJ'a  :]

Podobne pytania

0 głosów
0 odpowiedzi 275 wizyt
pytanie zadane 3 lutego 2021 w C i C++ przez Rainbow99 Początkujący (430 p.)
0 głosów
1 odpowiedź 488 wizyt
pytanie zadane 10 listopada 2020 w C i C++ przez Karington Nowicjusz (120 p.)
0 głosów
1 odpowiedź 298 wizyt
pytanie zadane 21 września 2020 w SPOJ przez Billy Użytkownik (680 p.)

93,326 zapytań

142,323 odpowiedzi

322,391 komentarzy

62,655 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...