ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1021. Таинство суммы

Please say, what is wrong?:)
Послано -{ElectroN}- 25 окт 2009 18:52
Is's my program...

type
b=array [1..50000] of longint;
var
n,m:longint;
mas:b;
a:longint;
i,j:longint;
flag:boolean;

function binar_search(x:longint):boolean;
var
k:longint;
begin
 i:=1;
 j:=n;
  repeat
   k:=(i+j) div 2;
   if x+mas[k]<10000 then
    i:=k+1 else
     j:=k-1;
  until (mas[k]+x=10000) or (i>j);
  if mas[k]+x=10000 then
   binar_search:=true else
    binar_search:=false;
end;

begin
readln(n);
for i:=1 to n do
 readln(mas[i]);

readln(m);
for i:=1 to m do
 begin
  readln(a);
   if binar_search(a)=true then
    flag:=true;
 end;
 if flag=true then
  writeln('YES') else
   writeln('NO');

   readln;
end.