1) n = 16
2) m = 180
3) a = 26
4) a = 22
5) b = 1
Объяснение:
1)
v := 1 // v = 1
n := 24 // n = 24
v := n - v * 4 // 24 - 1 * 4 ⇒ v = 20
n := v * 2 - n // 20 * 2 - 24 ⇒ n = 16
n = 16
2)
k := 3 // k = 3
m := 30 // m = 30
k := m - k * 3 // 30 - 3 * 3 ⇒ k = 21
m := k * 10 - m // 21 * 10 - 30 ⇒ m = 180
m = 180
3)
a := 4 // a = 4
b := 9 // b = 9
b := 6 * b - a // 6 * 9 - 4 ⇒ b = 50
a := b / 5 * 3 - a // 50 / 5 * 3 - 4 ⇒ a = 26
a = 26
4)
a := -12 // a = -12
b := 14 - a / 2 // 14 - (-12) / 2 ⇒ b = 20
b := (b - a) / 8 // (20 - (-12)) / 8 ⇒ b = 8
a := b * 2 + 6 // 8 * 2 + 6 ⇒ a = 22
a = 22
5)
a := 7 // a = 7
b := 2 // b = 2
a := b * 4 + a * 3 // 2 * 4 + 7 * 3 ⇒ a = 29
b := 30 - a // 30 - 29 = 1
b = 1
#include <iostream>
#include <vector>
#include <set>
#define ll long long
using namespace std;
signed main() {
ll n;
cin >> n;
vector<pair<ll,ll>> a(n);
vector<ll> pref(n,0),d(n,0),ans(n,0);
set<ll> s;
for(ll i = 0; i < n; i++){
cin >> a[i].first;
a[i].second = i;
s.insert(a[i].first);
if(i == 0)
pref[i] = a[i].first;
else
pref[i] = pref[i-1] + a[i].first;
d[i] = s.size();
}
if(d[n-1] > 1 || n == 1)
ans[a[n-1].second] = 1;
for(ll i = n - 2; i >= 0; i--){
if(pref[i] > a[i + 1].first && ans[a[i+1].second] == 1 && d[i] > 1)
ans[a[i].second] = 1;
}
for(ll i = 0; i < n; i++)
cout << ans[i] << " ";
}
P.S. Откуда задача, уж больно часто я ее встречаю на подобных сайтах
type ar=array[1..n] of integer;
procedure p1(var x:ar);
var i:integer;
begin
for i:=1 to n do x[i]:=random(51);
end;
procedure p2(h:char;var x:ar);
var i:integer;
begin
writeln('---',h,'---');
for i:=1 to n do write(x[i]:4);
writeln;
end;
procedure p3(var x:ar; var min,imin:integer);
var i:integer;
begin
min:=x[1]; imin:=1;
for i:=2 to n do
if x[i]<min then begin min:=x[i]; imin:=i; end;
end;
var a,b : ar;
m1,m2,im1,im2: integer;
begin
Randomize;
p1(a); p2('a',a);
p3(a,m1,im1);
writeln('m1=',m1,' im1=',im1);
p1(b); p2('b',b);
p3(b,m2,im2);
writeln('m2=',m2,' im2=',im2);
if im2<n
then begin b[im2+1]:=m1; p2('b',b); end
else writeln('Минимальный элемент последний');
end.
Пример:
---a---
13 11 4 48 36 25 9 47 40 8
m1=4 im1=3
---b---
45 13 48 18 41 17 5 43 9 21
m2=5 im2=7
---b---
45 13 48 18 41 17 5 4 9 21