Уляшева Лидия Александровна, учитель информатики УТЛ. В работе приводятся условия задач олимпиады 2012 муниципального уровня и их решения на языке ТурбоПаскаль. Решения авторские. С данной работой я выступила на ГМО информатики в декабре 2012 г. Работа полезна для учащихся, принимающих участие в олимпиадах по информатике, а также учителям, которые курируют подготовку «олимпиадников». Задача Аквариум В главном офисе МОЗГ (межгалактический отдел головоломок) стоит огромный аквариум в форме шара радиуса R со срезанным сверху шаровым сегментом высоты H. Новому межгалактическому завхозу поручили поменять всю воду. Требуется помочь завхозу - найти объем аквариума. Формат входного файла input.txt Два вещественных числа: R и H (0<=H<=R) Формат выходного файла output.txt Объем аквариума, округленный до двух знаков. Пример: input.txt output.txt 70 6 1429064.42 Решение задачи Аквариум var v,v1,e,t,r,h,dx,x,r2:real; n, i: integer; begin read(r, h); n:=10;v:=0;e:=0.01;dx:=(2*r-h)/n; repeat v1:=0; x:=-r; for i:=1 to n do begin r2:=r*r-sqr(x+dx/2); v1:=v1+pi*r2*dx; x:=x+dx; end; t:=abs(v-v1); if t>e then begin v:=v1; n:=2*n; dx:=dx/2 end; until t<e; writeln('v=',v:8:2); end. Задача Экстрасенсорика Ученые из МОЗГ очень интересуются возможностями одноименного органа. Они очень близки к прорыву. Один из добровольцев уже в течение недели принимает препарат, который позволяет ему читать мысли другого человека. И сегодня первый день серьезных испытаний. Компьютер выдаст на монитор одному из участников проекта до 100000 целых чисел, которые нужно прочесть про себя. В этот же момент доброволец будет пытаться считать эти числа из головы первого, а потом записать до 1000 чисел, которые запомнил. Необходимо узнать результаты теста, чтобы продолжить испытания. Необходимо найти количество угаданных чисел из первого набора. Формат входного файла input.txt В первой строке целые числа и M (0<=N<=100000, 0<=M<=1000)ю Во второй строке N исходных чисел. Во третьей строке M чисел, которые назвал доброволец. Формат выходного файла output.txt Количество угаданных чисел. Пример: input.txt 10 5 10 9 8 7 6 1 2 3 4 5 3 1 5 11 7 3 1 5 11 7 output.txt 4 Решение задачи Экстрасенсорика var n:longint;m,k,a,i,j,min,bf:integer; f:text; flag:boolean; b:array [1..1000] of integer; {предположения} begin write('n,m?'); readln(n,m); assign(f,'inout.txt');rewrite(f); readln(a);min:=a-1; writeln(f,a); writeln('Введите исходный набор'); for i:=1 to n-1 do begin readln(a); writeln(f,a)end; close(f); writeln('Введите предположения');for i:=1 to m do readln(b[i]); repeat flag:=true; for i:=1 to m-1 do if b[i]> b[i+1] then begin bf:= b[i+1]; b[i+1]:=b[i]; b[i]:=bf; flag:=false end; until flag; for i:=1 to m do write(b[i]:3); {удаление кратных элементов} { for i:=1 to m-1 do if b[i]= b[i+1] then b[i]:=min; } reset(f); i:=1;j:=1;k:=0; repeat readln(f,a); if a=b[j] then begin inc(k);inc(i); inc(j) end; if a<b[j] then inc(i); if a>b[j] then inc(j); until (i>=n) or (j>=m); close(f); writeln ('число совпадений ',k); end. Задача Участки на Уране Уран наконец-то освоен! МОЗГу удалось и на этой мертвой планете поставить нужные преобразователи. Теперь и на этой планете можно проводить некоторое время без вреда для здоровья. Чем и решили воспользоваться межпланетные турфирмы. Фирма «С нами хоть на Луну» решила потратить весь свой фонд на покупку квадратных участков на Уране. Чтобы не потерять в прибыли, нужно потратить весь фонд до монеты, а чтобы не иметь дело с Межпланетной налогово-таможенной службой, было бы здорово купить наименьшее количество участков. Цена 1 кв. м планеты – 1 монета. Помогите турфирме решить проблему! Формат входного файла input.txt Целое число N (0<=N<=100) – число монет в турфирме. Формат выходного файла output.txt Минимальное количество квадратных участков, которое можно купить, потратив все эти деньги. Пример: input.txt output.txt 15 4 Решение задачи Урания var n,k,a:integer; begin read(n); k:=0; repeat a:=trunc(sqrt(n)); k:=k+n div (a*a); n:=n mod (a*a); until n=0; writeln('участков:',k); end. Задача Палиндром На одной из круглых планет аборигены гордятся своей симметричностью и придерживаются ее во всем. Слова на этой планете состоят исключительно из палиндромав – слов, которые одинаково читаются справа налево и слева направо, например, топор, ротор, казак. МОЗГ хочет наладить отношения с этой планетой, для этого слова английского языка надо привести к симметричному виду, добавив справа минимальное количество букв. Помогите МОЗГу решить проблему! Формат входного файла input.txt Строка S длиной до 200 символов из заглавных латинских букв. Формат выходного файла output.txt Строка - палинром минимальной длины, начало которой полностью совпадает с исходной строкой S. Пример: input.txt output.txt ABC ABCBA Решение задачи Палиндром var s1,s:string;l,i,j: integer;flag: boolean; function pal(s:string): boolean; var l,i,l2: byte; f:boolean; begin l:=length(s);l2:=l div 2;f:=true; for i:=1 to l2 do if s[i]<>s[l+1-i] then f:=false; pal:=f; end; begin readln(s); l:=length(s); i:=1; repeat s1:=copy(s,i,l-i+1); flag:=pal(s1); if not flag then i:=i+1; until flag; for j:=i-1 downto 1 do s:=s+ s[j]; writeln (s); end. Задача Щит Многие из планетарных союзов заказыват МОЗГу разработку сторожевого щита из ультраплотной плазмы, который бы плотно примыкал ко всем планетам союза (см. рис.). В каждом союзе все планеты имеют одинаковый радиус. Дано количество планет в союзе и их радиус. Необходимо определить периметр сторожевого щита с минимальными затратами плазы. Формат входного файла input.txt В первой строке: целое число N (0<=N<= 100) –число планет, R- радиус планет. В последующих N строках – координаты центров планет. Формат выходного файла output.txt Длина сечения щита, вещественное число, округленное до двух знаков. Пример: input.txt 41 0.0 0.0 2.0 0.0 0.0 2.0 2.2 2.2 output.txt 14.28 Решение задачи Щит var n,i:integer;r,p:real; x,y:array[1..1001] of real; begin write('n=');read(n); writeln('r=');readln(r); for i:=1 to n do begin write(i,') x,y=');readln(x[i],y[i]) end; p:=2*pi*r; x[n+1]:=x[1]; y[n+1]:=y[1]; for i:=1 to n do p:=p+ sqrt(sqr(x[i+1]-x[i])+sqr(y[i+1]-y[i])); writeln('p=', p:8:3); end.