Имеется 9 монет среди которых одна фальшивая легче других придумайте найти фальшивую монеты за наименьшее кол - во ходов на чашечных весах без гирь , используя связку "", ""
Начало Сложить по 4 монеты на каждую чашку Если вес одной чаши равен весу второй чаши, то фальшивая монета - оставшаяся Если вес первой чаши меньше веса второй чаши, то начать выполнять операторы пока вес первой чаши меньше веса второй чаши начать цикл убрать монету с первой чаши убрать монету со второй чаши закончить цикл Взять последнюю выложенную монету с первой чаши(она фальшивая) закончить выполнять операторы Если вес второй чаши меньше веса первой чаши, то начать выполнять операторы пока вес второй чаши меньше веса первой чаши начать цикл убрать монету с первой чаши убрать монету со второй чаши закончить цикл Взять последнюю выложенную монету со второй чаши(она фальшивая) закончить выполнять операторы конец
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; }
Сложить по 4 монеты на каждую чашку
Если вес одной чаши равен весу второй чаши, то фальшивая монета - оставшаяся
Если вес первой чаши меньше веса второй чаши, то
начать выполнять операторы
пока вес первой чаши меньше веса второй чаши
начать цикл
убрать монету с первой чаши
убрать монету со второй чаши
закончить цикл
Взять последнюю выложенную монету с первой чаши(она фальшивая)
закончить выполнять операторы
Если вес второй чаши меньше веса первой чаши, то
начать выполнять операторы
пока вес второй чаши меньше веса первой чаши
начать цикл
убрать монету с первой чаши
убрать монету со второй чаши
закончить цикл
Взять последнюю выложенную монету со второй чаши(она фальшивая)
закончить выполнять операторы
конец