Rozwiązuję zadanie ze spoja o alfabecie Morse’a. Wszystko w konsoli działa, podane przypadki też, a jednak spoj nie przyjmuje. Gdzie może tkwić błąd?
Link do zadania: http://discuss.spoj.com/t/alfabet-morsea/38828
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
string napisDoZaszyfrowania;
map <char, string> alfabetMorsa;
alfabetMorsa['A']=".-";
alfabetMorsa['a']=".-";
alfabetMorsa['B']="-...";
alfabetMorsa['b']="-...";
alfabetMorsa['C']="-.-.";
alfabetMorsa['c']="-.-";
alfabetMorsa['D']="-..";
alfabetMorsa['d']="-..";
alfabetMorsa['E']=".";
alfabetMorsa['e']=".";
alfabetMorsa['F']=".-..";
alfabetMorsa['f']=".-..";
alfabetMorsa['G']="--.";
alfabetMorsa['g']="--.";
alfabetMorsa['H']="....";
alfabetMorsa['h']="....";
alfabetMorsa['I']="..";
alfabetMorsa['i']="..";
alfabetMorsa['J']=".---";
alfabetMorsa['j']=".---";
alfabetMorsa['K']="-.-";
alfabetMorsa['k']="-.-";
alfabetMorsa['L']="..-.";
alfabetMorsa['l']="..-.";
alfabetMorsa['M']="--";
alfabetMorsa['m']="--";
alfabetMorsa['N']="-.";
alfabetMorsa['n']="-.";
alfabetMorsa['O']="---";
alfabetMorsa['o']="---";
alfabetMorsa['P']=".--.";
alfabetMorsa['p']=".--.";
alfabetMorsa['Q']="--.-";
alfabetMorsa['q']="--.-";
alfabetMorsa['R']=".-.";
alfabetMorsa['r']=".-.";
alfabetMorsa['S']="...";
alfabetMorsa['s']="...";
alfabetMorsa['T']="-";
alfabetMorsa['t']="-";
alfabetMorsa['U']="..-";
alfabetMorsa['u']="..-";
alfabetMorsa['V']="...-";
alfabetMorsa['v']="...-";
alfabetMorsa['W']=".--";
alfabetMorsa['w']=".--";
alfabetMorsa['X']="-..-";
alfabetMorsa['x']="-..-";
alfabetMorsa['Y']="-.--";
alfabetMorsa['y']="-.--";
alfabetMorsa['Z']="--..";
alfabetMorsa['z']="--..";
alfabetMorsa[' ']="/";
while (getline(cin, napisDoZaszyfrowania)) {
for (int i = 0; i < napisDoZaszyfrowania.length(); i++) {
map <char, string> :: iterator itr = alfabetMorsa.find(napisDoZaszyfrowania[i]);
if (itr!= alfabetMorsa.end()) {
cout << itr->second << "/";
}
}
cout << "\n";
}
return 0;
}