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

SPOJ Flamaster, zastępowanie napisu liczbą

HackNation - ogólnopolski hackathon
0 głosów
2,241 wizyt
pytanie zadane 21 sierpnia 2016 w C i C++ przez mariuszd312 Nowicjusz (200 p.)

Witam, rozwiązuje właśnie zadanie ze SPOJa, i natknąłem się na problem, mianowicie chcę zastąpić literę z napisu na cyfrę która jest zapisana w int'cie. Wyskakuje mi błąd ponieważ, (jak się domyślam) można tę literę zastąpić tylko przez liczbę wpisaną w cudzysłów. Czy można to jakoś ominąć? Czy może powinienem użyć jakiejś innej komendy? 

Link do zadania: http://pl.spoj.com/problems/FLAMASTE/

Jeśli będziecie testować program to pamiętajcie, że najpierw trzeba podać liczbę testów, a dopiero potem napis!

Oto kod źródłowy:

#include <iostream>

using namespace std;

int t, dlugosc;
string napis;

int main()
{
    cin>>t;

    for(int i=0; i<t; i++)
    {
        cin>>napis;
        dlugosc=napis.length();
        
        if(dlugosc>2)
        {
            napis.erase(2,(dlugosc-2));
            napis.replace(1,(dlugosc-2),TUTAJ CHCE WSTAWIC LICZBE ZE ZMIENNEJ dlugosc);
        }
        cout<<napis;
    }
    return 0;
}

 

2 odpowiedzi

+1 głos
odpowiedź 21 sierpnia 2016 przez CharlieGG Użytkownik (900 p.)

Aby zamienić cyfrę z inta na stringa, można użyć prostej operacji, a mianowicie 

'0' + x

gdzie x to Twoja liczba w intcie. Działa to tylko dla pojedynczych cyfr, ponieważ w ten sposób po prostu otrzymujemy kod ASCII danej cyfry. W przypadku liczb większych od 9 sprawa jest nieco bardziej skomplikowana, ale tylko nieznacznie.

0 głosów
odpowiedź 21 sierpnia 2016 przez manjaro Nałogowiec (37,390 p.)
Możesz zawsze przekonwertować to do stringa np poprzez to_str(liczba)

Ale tak naprawdę nie trzeba tego zadania w ten sposób rozwiązywać. Możesz od razu wypisywać na wyjście bez zmiany w tablicy.

Podobne pytania

0 głosów
1 odpowiedź 851 wizyt
pytanie zadane 18 lutego 2020 w SPOJ przez MakaBresk Obywatel (1,060 p.)
0 głosów
1 odpowiedź 1,130 wizyt
pytanie zadane 21 stycznia 2017 w C i C++ przez Krzysztof Rak Bywalec (2,420 p.)
0 głosów
1 odpowiedź 190 wizyt
pytanie zadane 3 grudnia 2024 w C i C++ przez lisek123 Nowicjusz (120 p.)

93,627 zapytań

142,551 odpowiedzi

323,050 komentarzy

63,132 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 1694p. - dia-Chann
  2. 1676p. - DziarnowskiJ
  3. 1650p. - Łukasz Piwowar
  4. 1640p. - CC PL
  5. 1616p. - Maurycy W
  6. 1607p. - raydeal
  7. 1602p. - Adrian Wieprzkowicz
  8. 1588p. - Tomasz Bielak
  9. 1521p. - Michal Drewniak
  10. 1360p. - rafalszastok
  11. 1335p. - robwarsz
  12. 1269p. - Rafał Trójniak
  13. 1257p. - ssynowiec
  14. 1208p. - Mariusz Fornal
  15. 1116p. - rucin93
Szczegóły i pełne wyniki

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

Kursy INF.02 i INF.03
...