int main() { list<int>mylist; //Делаем со списком, что хотим mylist.push_back(1); mylist.push_back(2); mylist.push_back(3); mylist.push_back(-4); mylist.push_back(5); for (auto i : mylist) { cout << i << " "; } cout << "\n"; //Удаляем последний отрицательный элемент auto it = mylist.end(); while (*it > 0) { if (it == mylist.begin()) { cout << "Not found.\n"; return 0; } it--; } //Делаем со списком, что хотим mylist.erase(it); for (auto i : mylist){ cout << i << " "; } return 0; }
Ищем в именах файлов закономерности, чтобы выделить пять из них. 1. Есть ровно пять файлов, начинающихся символом "p". В расширении имени (после точки) они имеют от одного до трех символов. Регулярное выражение будет иметь вид p[a-z]*.[a-z]* 2. Есть ровно пять файлов, имена которых завершаются символом "r". В расширении имени (после точки) они имеют от двух до трех символов. Регулярное выражение будет иметь вид [a-z]*r.[a-z]*
Ищем среди ответов похожий. p+[a-z]*.[a-z]* - в принципе, то же, знак + тут необязателен, но и не мешает. [a-z]*r+.[a-z]{3} - все портит это {3}, требующее ровно 3 повторения, а у нас от 2 до 3.
#include <list>
using namespace std;
int main() {
list<int>mylist;
//Делаем со списком, что хотим
mylist.push_back(1);
mylist.push_back(2);
mylist.push_back(3);
mylist.push_back(-4);
mylist.push_back(5);
for (auto i : mylist) {
cout << i << " ";
}
cout << "\n";
//Удаляем последний отрицательный элемент
auto it = mylist.end();
while (*it > 0) {
if (it == mylist.begin()) {
cout << "Not found.\n";
return 0;
}
it--;
}
//Делаем со списком, что хотим
mylist.erase(it);
for (auto i : mylist){
cout << i << " ";
}
return 0;
}
1. Есть ровно пять файлов, начинающихся символом "p". В расширении имени (после точки) они имеют от одного до трех символов.
Регулярное выражение будет иметь вид p[a-z]*.[a-z]*
2. Есть ровно пять файлов, имена которых завершаются символом "r". В расширении имени (после точки) они имеют от двух до трех символов.
Регулярное выражение будет иметь вид [a-z]*r.[a-z]*
Ищем среди ответов похожий.
p+[a-z]*.[a-z]* - в принципе, то же, знак + тут необязателен, но и не мешает.
[a-z]*r+.[a-z]{3} - все портит это {3}, требующее ровно 3 повторения, а у нас от 2 до 3.
ответ:
p+[a-z]*.[a-z]*