maryariazantseva
?>

На окружности расположено n точек. их положение определяется углом ф между осью оx и радиусом, проведенным от центра окружности до этой точки.угол задается в градусах. никакие две точки на окружности не . требуется среди данных точек найти такие, чтобы сумма расстояний по окружности от каждой из этих точек до всех остальных была минимальна. расстояние по окружности пропорциональна минимальному углу, между радиусами, проведенными к этим точкам, поэтому сумму расстояние следует вычислять как сумму углов. первая строка входного файла содержит целое число н(1< =н< =360) - количество точек. далее следует n строк: каждая строка содержит целое число ф(1< =ф< =360), определяющее положение точки на окружности. выходные данные первая строка выходного файла содержит число к - количество точек, удовлетворяющих условию . далее следует к строк, в каждой из которых содержится номер точки. точки пронумерованы от 1 до n в порядке считывания углов из файла. номера точек требуется вывести в порядке возрастания.

Информатика

Ответы

filippovev1
Это отборочный тур, домашнее задание?
Желаю успехов.
olartamonov6
{ задание 1}
const
  n=17;
var
  a:array[1..n] of integer;
  i,k:integer;
begin
  Randomize;
  k:=0;
  for i:=1 to n do begin
    a[i]:=Random(99)+1;
    Write(a[i],' ');
    if a[i] mod 2=0 then k:=k+1
    end;
  Writeln;
  Writeln('k=',k)
end.

Пример
43 86 43 13 24 18 93 38 38 59 15 75 12 92 8 72 8
k=10

{ задание 2/3}
const
  n=17;
var
  a:array[1..n] of integer;
  i,s:integer;
begin
  Randomize;
  s:=0;
  for i:=1 to n do begin
    a[i]:=Random(99)+1;
    Write(a[i],' ');
    if a[i] mod 10=2 then s:=s+a[i]
    end;
  Writeln;
  Writeln('s=',s)
end.

Пример
58 39 12 24 91 57 14 44 47 61 31 10 95 54 42 98 76
s=54
andrewa

1) program Array16;

var

i:integer; // счетчик в цикле

N:integer;

a: array [1..10] of integer;

begin

writeln('Введите N (N<10)');

readln(N); // ввод размера массива

for i:=1 to N do

begin

write('a[',i,']=');

readln(A[i]); // ручной ввод значений массива

end;

writeln('Результат');

for i:=1 to N do

begin

// вычисление и вывод элементов в указанном порядке

write(' ',a[(i div 2+1)*((i) mod 2)+ n*((i+1)mod 2)-((i div 2)-1)*((i+1) mod 2)]);

end;

end.

2) Var A:array[1..100] of integer;

i,n:byte;

Begin

write('Введите n<=100: ');readln(n);

For i:=1 to n do

Begin

A[i]:=random(31);

write(A[i]:3);

End;

writeln;

For i:=1 to n div 2 do

write(A[i]:3,A[n-i+1]:3);

if n mod 2 <>0 then write(A[n div 2+1]:3);

End.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На окружности расположено n точек. их положение определяется углом ф между осью оx и радиусом, проведенным от центра окружности до этой точки.угол задается в градусах. никакие две точки на окружности не . требуется среди данных точек найти такие, чтобы сумма расстояний по окружности от каждой из этих точек до всех остальных была минимальна. расстояние по окружности пропорциональна минимальному углу, между радиусами, проведенными к этим точкам, поэтому сумму расстояние следует вычислять как сумму углов. первая строка входного файла содержит целое число н(1< =н< =360) - количество точек. далее следует n строк: каждая строка содержит целое число ф(1< =ф< =360), определяющее положение точки на окружности. выходные данные первая строка выходного файла содержит число к - количество точек, удовлетворяющих условию . далее следует к строк, в каждой из которых содержится номер точки. точки пронумерованы от 1 до n в порядке считывания углов из файла. номера точек требуется вывести в порядке возрастания.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Dato24043846
orinvarostov
novocherkutino7
egorova90356684858370
Georgievich-Zamudinovna2003
dkedrin74038
Savva1779
Анастасия Елена
Светлана308
Диана820
Мария1414
Герасимова107
nikiforovako76
kapral1812
vasinam