Hỏi về map trong c++

Em mới học về map nên một số cái thầy dạy em không hiểu lắm, mọi người có thể giải thích từng dòng code cho em được ko ah?

int main(){	
	ll i, n, m;
	cin >> n >> m;
	map<string,string> mp;
	string s1, s2;
	for(i = 0, i < m; i++){
		
		cin >> s1 >> s2;
		mp[s1] = s2;
	}
 
	string s;
	for(i = 0, i < n; i++){
		
		cin >> s;
		if(s.length() <= mp[s].length())	cout << s << " ";
		else cout << mp[s] << " ";
	}
	return 0;
}

Em cảm ơn

Tự hiểu chứ sao lại “giải thích từng dòng”.
Bạn hiểu bản chất map là gì thì sẽ hiểu toàn bộ thôi.
https://en.cppreference.com/w/cpp/container/map

4 Likes

humm đúng cái này em cần, tìm mãi ko thấy, cảm ơn a

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?