Witam serdecznie. Niestety mam swój kod który działa bez zarzutu a wyskakuje błąd od sędziego. Można mi jakoś pomóc czy jestem już beznadziejnym przypadkiem i nie warto .
#include
using namespace std;
string zdanie;
int main()
{
while( getline(cin,zdanie))
{
for (int i=0;i<zdanie.length();i++)
if(zdanie[i]==' ')
{
zdanie.erase(i,1);
zdanie[i]= toupper(zdanie[i]);
}
cout<<zdanie<<endl;
}
return 0;
}
Fakt, kod [chyba] działa bez zarzutu, ale nie daje prawidłowych odpowiedzi i od sędziego nie dostajesz błędu, tylko informacje, że odpowiedzi nie są zgodne z oczekiwanymi dla specyficznych testów. Np więcej niż jedna spacja itd. Mała litera na początku + spacje z przodu itd.
Nie marw się, nie jesteś najgorszy i to zależy tylko od Ciebie. Po prostu don’t give up .
PS
Też jestem beznadziejnym przypadkiem i przypadkiem pomagam zbierać kasę --> Jak zdobyć szacun na SPOJu
zalecaną metodą przekazywania kodu jest poprzez link do ideone.com9
przed napisanie pytania warto przeczytać wątek - może już jest rozwiązanie problemu
gdzieś powyżej znajdziesz test dla którego twój program źle działa
Zmienić treść polecenia zadania na bardziej zrozumiałą, bo ludzie tracą cały dzień, tylko dlatego że pierwsza literka w zdaniu jest duża, a powinna być mała nie wiedzieć czemu.
(…), a każdy wyraz rozpoczyna się wielką literą. Twoim zadaniem jest otrzymany tekst przerobić zgodnie z powyższym trendem.
więc wychodzi, że wyraz ‘’ a ‘’ na początku zdania musi być dużą literą.
‘‘Ponadto każdy wyraz poprzedzony na wejściu spacją zaczyna się wielką literą.’’
PONADTO nie kasuje pierwszego warunku tylko, jest dodatkowym warunkiem, a tak naprawdę tym samym co pierwszy warunek, więc jest niepotrzebny. Oczywistym przecież jest zakładając, że autor zadania umie pisać, iż wszystkie kolejne wyrazy są oddzielone spacją, żeby zdanie było czytelne. Skąd ma niby wynikać, że pierwsza litera w zdaniu, jeśli była mała ma być nadal mała?
usunąć drugi niepotrzebny warunek, dodać wzmiankę o pierwszej literce
Problem jest znany, ale wątpię, by komuś się go chciało naprawić. I może niech tak zostanie bo naprawienie banalnego błędu na minutę maks dwie po 14 latach byłoby hm… powiedzmy, że o czymś by świadczyło
W każdym razie owszem: ludzie na SPOJu działają za friko, a dorzuć do tego kwestie historyczne i bardzo małe zainteresowanie twórców SPOJa pl.spoj.com. Wiele zadań ma niejasną, a nawet konfundującą treść. Część jest nie do naprawienia, autorzy dawno znikli, brakuje obrazków z objaśnieniami, notatki z wykładów, na podstawie których należało coś rozwiązać znikły, … . Słowem: słabo.
Aby jakoś sobie poradzić z wadami SPOJa powstało m. in. forum. Kiedyś były jeszcze bezcenne komentarze pod zadaniami, ale z pewnych powodów zostały usunięte.
Przykładowe komentarze:
Tu uwaga, że pasuje to do: “Tekst wprowadzony z wejścia, ale bez spacji. Ponadto każdy wyraz poprzedzony na wejściu spacją zaczyna się wielką literą.”. W przypadku tego zadania opis Outputu jest jednak istotniejszy niż wstęp, który był chyba pisany mocno na siłę. Co jednak nie zmienia faktu, że jest on mylący.
Natomiast najważniejszy komentarz brzmi:
i nic na to nie poradzimy.