1). Из большого кувшина отлить в маленький 3 л. В большом осталось 5 л.
2). Перелить 3 л из маленького в средний кувшин.
3). Снова наполнить маленький кувшин из большого. В большом осталось 2 л.
4). Из маленького (в котором 3 л) наполняем доверху средний (в котором было 3 л). При этом переливаем в него 2 л, а в маленьком остается 1 л.
5). 5 л из среднего переливаем в большой (было 2 л, стало 7 л).
6). Переливаем 1 л из маленького в средний.
7). Из большого (где 7 л) наполняем маленький. В большом осталось 4 л.
8). Из маленького выливаем 3 л в средний, где был 1 л и получаем тоже 4 л.
Объяснение:
#include <iostream>
#include <vector>
using namespace std;
void solve(){
int m,n;
cin >> m >> n;
vector<vector<int>> a(m,vector<int>(n));
vector<bool> b(m, true);
for(int i = 0; i < m; i++)
for(int j = 0; j < n; j++)
cin >> a[i][j];
for(int i = 0; i < m; i++)
for(int j = 1; j < n; j++)
if(a[i][j] <= a[i][j-1])
b[i] = false;
for(auto i : b) cout << i << " ";
}
signed main(){
solve();
}
var n,i:integer;
s1, s2: set of integer;
function prost(n:integer):boolean;
var j,m:integer;
begin
m:=0;
for j:=2 to trunc(sqrt(n)) do
if n mod j = 0 then inc(m);
prost:=m=0;
end;
begin
readln(n);
s1:=[1]; s2:=[];
for i:=2 to n do
if n mod i=0 then
begin
s1:=s1+[i];
if prost(i) then s2:=s2+[i];
end;
writeln('Все делители:');
for i:=1 to n do
if i in s1 then write(i,' ');
writeln;
writeln('Все простые делители:');
for i:=1 to n do
if i in s2 then write(i,' ');
writeln;
writeln('Делители, которые не являются простыми:');
for i:=1 to n do
if i in (s1-s2) then write(i,' ');
end.
Пример:
340
Все делители:
1 2 4 5 10 17 20 34 68 85 170 340
Все простые делители:
2 5 17
Делители, которые не являются простыми:
1 4 10 20 34 68 85 170 340