string, znak '\0', zadanie ze spoja
Ostatnio zmodyfikowano 2015-12-09 11:22
Asahel Temat założony przez niniejszego użytkownika |
string, znak '\0', zadanie ze spoja » 2015-12-09 10:42:12 Mam problem z zadaniem ze spoja http://pl.spoj.com/problems/AL_13_10/. #include <iostream> #include <string>
using namespace std;
int main() { string a; string b; int x( 0 ), y( 0 ); cin >> a >> b; while(( a[ x ] != '\0' ) ||( b[ y ] != '\0' ) ) { if( a[ x ] == b[ y ] ) { y++; x++; } else { x++; } } if( b[ y ] = '\0' ) { cout << "Tak" << endl; } else { cout << "Nie" << endl; } }
Problem jest z pentlą while, która nie działa jak oczekuję. Ma porównywać te znaki aż do momentu gdy skończą się literki w pierwszym lub drugim wyrazie. Petla robi sie w nieskoczonosc :/. Jak to poprawic :( |
|
j23 |
» 2015-12-09 10:57:41 W warunku while zamiast || powinno być &&. |
|
Asahel Temat założony przez niniejszego użytkownika |
» 2015-12-09 11:22:59 Działa, był bład b[ y ] = '\0' :) Zaakceptowała z czasem 0.73 - ciut miernie. Ma ktoś pomysł jak poprawić ten algorytm? |
|
« 1 » |