1000 Ребят участвовало в опросе. 130 любят стимуляторы и квесты, 60 стимуляторы и стратегии, 40 квесты и стратегии. Сколько ребят одинаково любят и стимуляторы и квесты и стратегии?
Ввод графической информации может быть осуществлён с различных устройств: клавиатуры, мыши, сканера или графического планшета. Каждое из них имеет те или иные достоинства, но основной характеристикой является удобство использования. Клавиатура плохо подходит для построения изображений, так как она изначально предназначена для набора символьной, а не графической информации. Однако применение клавиатуры для ввода графической информации имеет определённые преимущества. С клавиш можно перемещать курсор каждый раз на одну позицию.
Если лень перебирать вручную, можно воспользоваться программой
var k,l,r,x,f:integer; begin f := 3001; l := 0; r := 65534; x := (l + r) div 2; k := 1; while (x <> f) and (l < r) do begin writeln(k,' ',l,' ',r,' ',x); k := k + 1; if f < x then r := x - 1 else l := x + 1; x := (l + r) div 2 end; writeln(k,' ',l,' ',r,' ',x); end.
1. 0..65534 -> 32767
2. 0..32766 -> 16383
3. 0..16382 -> 8191
4. 0..8190 -> 4095
5. 0..4094 -> 2047
6. 2048..4094 -> 3071
7. 2048..3070 -> 2559
8. 2560..3070 -> 2815
9. 2816..3070 -> 2943
10. 2944..3070 -> 3007
11. 2944..3006 -> 2975
12. 2976..3006 -> 2991
13. 2992..3006 -> 2999
14. 3000..3006 -> 3003
15. 3000..3002 -> 3001
Если лень перебирать вручную, можно воспользоваться программой
var k,l,r,x,f:integer;
begin
f := 3001;
l := 0;
r := 65534;
x := (l + r) div 2;
k := 1;
while (x <> f) and (l < r) do
begin
writeln(k,' ',l,' ',r,' ',x);
k := k + 1;
if f < x then r := x - 1
else l := x + 1;
x := (l + r) div 2
end;
writeln(k,' ',l,' ',r,' ',x);
end.