SHOW:
|
|
- or go back to the newest paste.
1 | - | bool cmp(const string lhs, const string rhs) { |
1 | + | bool cmp(const string& lhs, const string& rhs) { |
2 | string l = lhs; | |
3 | string r = rhs; | |
4 | int l_size = l.size(); | |
5 | int r_size = r.size(); | |
6 | ||
7 | if (l_size < r_size) { | |
8 | r.resize(l_size); | |
9 | } else if (r_size < l_size) { | |
10 | l.resize(r_size); | |
11 | } | |
12 | ||
13 | return l < r; | |
14 | } | |
15 | ||
16 | template <typename RandomIt> | |
17 | pair<RandomIt, RandomIt> FindStartsWith( | |
18 | RandomIt range_begin, RandomIt range_end, | |
19 | const string prefix) { | |
20 | ||
21 | auto r = equal_range(range_begin, range_end, prefix, cmp); | |
22 | ||
23 | return r; | |
24 | } |