Из 9 монет одинакового достоинства одна фальшивая более легкая за какое минимальное число взвешиваний на чашечных весах без гирь вы можете ее определить
Монетку можно определить за 2 взвешивания. 1. Делим на 3 группы по 3 штуки в каждой 2. Взвешиваем 1 и 2 группу. Если они одинаковы, то фальшивая в 3 группе. Если одна из них легче, то фальшивая группа та, что легче. 3. Взвешиваем 1 и 2 монетку в группе с фальшивой монеткой. 4. Если монетки одинаковы, то фальшивая 3, иначе фальшивая та, что легче.
int main() { int n; cin >> n; int maxdigit = 0; while (n > 0) { int digit = n % 10; if (digit > maxdigit) maxdigit = digit; n /= 10; } cout << maxdigit; return 0; }
Уровень D #include <iostream>
using namespace std;
int main(){ int n; cin >> n; int prev = -1; while (n > 0) { int digit = n % 10; if (digit == prev) { cout << "YES"; return 0; } prev = digit; n /= 10; } cout << "NO"; return 0; }
1.
Делим на 3 группы по 3 штуки в каждой
2.
Взвешиваем 1 и 2 группу. Если они одинаковы, то фальшивая в 3 группе. Если одна из них легче, то фальшивая группа та, что легче.
3.
Взвешиваем 1 и 2 монетку в группе с фальшивой монеткой.
4.
Если монетки одинаковы, то фальшивая 3, иначе фальшивая та, что легче.